Я обнаружил очень странную ошибку с приложением Android при установке приложения на устройстве Android с заданным потоком.onCreate() действия Launcher вызывается, когда приложение запускается при нажатии на значок запуска.
Установлено приложение из PlayStore (старая версия).
Запущено приложение (теперь я нахожусь в HomeScreen, .i.e.,
HomeActivity
).Теперь я обновил приложение, установив последнюю сборку (в процессе сборки, но для выхода в игровой магазин).
Щелкните значок запуска, дождитесь, пока на экране отобразится «Домашний экран» и сохраните приложение в фоновом режиме, нажав кнопку меню.
Теперь запустите приложение, щелкнув значок пусковой установки.
В этом случае, Splash Screen (Activity
) получает запущен, а затем берет меня на домашний экран. В журналах вызов переходит к onStop()
из HomeActivity. Это означает, что «Активность» не уничтожается. Итак, когда я нажимаю значок запуска, он должен возобновить HomeActivity, вместо этого он воссоздает splashActivity. Но когда я запускаю приложение из фона, активность возобновляется, и экран всплывания не отображается. Правильное ли поведение? Если да, то я не получаю обратный вызов до onDestroy()
.
Ниже мой код действия в манифесте:
<activity
android:name="com.app.ui.HomeActivity"
android:label="@string/app_name"
android:launchMode="singleTask"
android:configChanges="orientation|keyboard|keyboardHidden|screenSize|screenLayout|uiMode"
android:screenOrientation="portrait"
android:windowSoftInputMode="adjustNothing">
</activity>
<activity
android:name="com.app.ui.SplashActivity"
android:label="@string/app_name"
android:screenOrientation="sensorPortrait"
android:theme="@android:style/Theme.Translucent.NoTitleBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
Я не устанавливал режим запуска для SplashActivity
. И через какое-то время он становится правильным, и экран заставки не отображается.
Также, когда я запускаю приложение из фона или нажимаю кнопку «Назад», а затем нажмите значок приложения, эта ошибка не воспроизводится. Это происходит только тогда, когда я нажимаю значок запуска, сохраняя приложение в фоновом режиме, и через какое-то время он становится правильным.
Кроме того, когда я установил приложение без обновления, эта проблема не возникла. Только тогда, когда я обновляю APK, это происходит
Почему это происходит в начальном launches..Is это ошибка в андроиде? .. Если да, то как избежать этой проблемы ..
, я думал то же самое. Возможно, я ошибаюсь, но это то, что я наблюдал. Через некоторое время он работает правильно. Если ядро устройства убивает процесс, тогда он должен убивать каждый раз правильно. Почему только в начальных запусках. Здесь я смущен. –