Android - боковая загрузка приложения поддерживает состояние приложения, но новая загрузка из Play Store / хоккейного приложения не - PullRequest
0 голосов
/ 22 июня 2019

Я замечаю странное поведение в своем приложении и не знаю, что его вызывает, где искать или с чего начать расследование.

Итак, моя основная деятельность называет другую активность входом в активность. У моего входа в аккаунт есть 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" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...