Я замечаю странное поведение в своем приложении и не знаю, что его вызывает, где искать или с чего начать расследование.
Итак, моя основная деятельность называет другую активность входом в активность. У моего входа в аккаунт есть 2 макета, например макет A и макет B. Как только я запускаю приложение, отображается макет A, и когда я нажимаю кнопку на макете A, он скрывается и отображается макет B.
Боковая загрузка приложения:
Во время боковой загрузки, если я нахожусь в макете B и перехожу в фоновый режим и возвращаюсь к приложению, приложение все еще запускает макет B, и я заметил, что метод onStart вызывается в SignIn Activity.
Загрузка из HockeyApp или PlayStore:
В загруженном приложении, если я нахожусь в макете B и перехожу в фоновый режим и возвращаюсь, приложение отображает макет A, т.е. оно не поддерживает состояние и снова проходит весь жизненный цикл активности, начиная с onCreate. Однако если я принудительно остановлю приложение вручную и попробую тот же сценарий, то оно будет вести себя как приложение с боковой загрузкой, то есть оно будет поддерживать состояние приложения после выхода из фона.
Не уверен, что вызывает такое поведение. Кто-нибудь сталкивался с таким поведением раньше?
Добавление логики для обоих действий из файла AndroidManifest.
<activity
android:name=".MainActivity"
android:screenOrientation="portrait"
android:windowSoftInputMode="adjustNothing"
android:launchMode="singleTop"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="test-app" />
<data android:host="loc" />
</intent-filter>
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="https" />
<data android:scheme="http" />
<data android:host="*" />
<data android:pathPattern="/.*/apps/test.*" />
</intent-filter>
</activity>
<activity
android:name=".SignInActivity"
android:screenOrientation="portrait"
android:windowSoftInputMode="adjustPan" />