Intereting Posts
ArcGIS: как получить местоположение устройства Как очистить трассировку стека событий на обратном пресс-мероприятии? Получить высоту и положение строки состояния для api 11, чтобы изменить цвет Ограничение по размеру файла sharepreferences для Android Настройка политики конфиденциальности Android Разработка Android-приставки Android Samsung Galaxy S2 AVD – официальный скин, как сделать правильные размеры Android AudioTrack играет в .wav-файл, получая только белый шум Android WebView внутри ScrollView прокручивает только scrollview Обращение с логином и помните меня с помощью AccountManager Сделать одно и то же пространство между кнопкой в ​​linearlayout Android. Можно ли «заблокировать» частоту кадров предварительного просмотра камеры? Grade Plugin 3-alpha1 outputFile вызывает ошибку Пустое пространство, когда в Android открывается мягкая клавиатура Длинные математические вычисления в приложении для Android

React Native Android Splash Screen

Я пытаюсь создать заставку для приложения Android RN. Я выполнил описанные здесь шаги: https://www.bignerdranch.com/blog/splash-screens-the-right-way/

К сожалению, при попытке запустить мое приложение сборка выполнена успешно, но приложение вылетает, говоря:

Error type 3 Error: Activity class {com.needlios/com.needlios.MainActivity} does not exist. 

Кто-нибудь знает, откуда это может произойти?

У меня есть следующий код:

SplashScreen.java

 package com.needlios; import android.content.Intent; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; public class SplashActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Intent intent = new Intent(this, MainActivity.class); startActivity(intent); finish(); } } 

MainActivity.java

 package com.needlios; import com.facebook.react.ReactActivity; import com.facebook.react.ReactPackage; import com.facebook.react.shell.MainReactPackage; import java.util.Arrays; import java.util.List; public class MainActivity extends ReactActivity { /** * Returns the name of the main component registered from JavaScript. * This is used to schedule rendering of the component. */ @Override protected String getMainComponentName() { return "NeedlIOS"; } /** * Returns whether dev mode should be enabled. * This enables eg the dev menu. */ @Override protected boolean getUseDeveloperSupport() { return BuildConfig.DEBUG; } /** * A list of packages used by the app. If the app uses additional views * or modules besides the default ones, add more packages here. */ @Override protected List<ReactPackage> getPackages() { return Arrays.<ReactPackage>asList( new MainReactPackage(), ); } } 

AndroidManifest.xml

 <activity android:name=".SplashActivity" android:label="@string/app_name" android:theme="@style/SplashTheme"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> 

Хорошо, хорошо работает. Я просто изменил android:name для android:name=".MainActivity" в AndroidManifest.xml

Он работает, но я не понимаю, почему он показывает заставку, хотя …

Просто поделиться, как я получил эту работу тоже.

Изменение

андроид: имя

в

Android: name = ". MainActivity" в AndroidManifest.xml

Работает, потому что весь фон был изменен на тему Splashscreen. Это может быть не очень хорошее решение, как если бы backgroundColor был удален с любого экрана; Этот фон заставки будет отображаться. В конечном итоге это приведет к появлению некоторых нежелательных дисплеев, когда вам необходимо интегрироваться с некоторыми функциями камеры. 🙁

Большинство кодов основано на этой ссылке с удаленной активностью брызг. Если кто-то ищет, добавьте значения / colors.xml и drawable / backgroundsplash.xml.

Вы не можете создать заставку внутри встроенного скрипта ract, вам нужно перейти к исходной реализации. Чтобы создать простой заставку, вам нужно установить «андроид: windowBackground» на тему, используемую вами основным видом деятельности. Таким образом, они будут отображаться пользователю до тех пор, пока полностью не загрузится ваш реактивный вид. Вот статья о том, как это сделать.