Таким образом, в общем общем подходе к брызгам деятельности Screen-то вроде этого:Заставка не перезапуск при перезапуске после памяти приложения собрана
public class SplashActivity extends Activity
@override
protected void onResume() {
//Create a thread
new Thread(new Runnable() {
public void run() {
//Do heavy work in background
((MyApplication)getApplication()).loadFromDb();
startActivity(new Intent(SplashActivity.this, MainActivity.class));
finish(); //End this activity
}
}).start();
}
}
Проблемы, которую я нашел в этом случае является то, что, когда приложение находится в фон и он собирает memmory, когда вы возвращаете его на передний план Application.onCreate вызывается снова, активность Splash не вызывается, и вместо этого всякая активность открыта, когда приложение переходит в фоновый режим. Как вы убедитесь, что в этой ситуации SplashScreen - это тот, который запущен?
Edit1: Btw, я пробовал настройку android: clearTaskOnLaunch = "true" для Activity Splash Screen, но это, казалось, ничего не делало.
В манифесте зарегистрировать свой экземпляр приложения: <приложение Android: имя = «fullinstanceclass» ...> в OnCreate запуска экземпляра прикладной ваш всплеск? – d3n13d1
@ d3n13d1, но как это будет происходить с активностью MAIN/LAUNCHER ... в настоящее время я отмечаю действие SplashScreen как таковое. –