我们的应用程序有一个启动活动(启动器的主要活动)和许多其他活动。在大多数情况下,当用户将应用程序切换到后台并从启动器恢复时,旧的活动堆栈会恢复,并且该堆栈中的顶部活动会按预期显示。
但是,当 apk 刚刚安装在手机上,或者安装了同一应用程序的新 apk(更高版本)时,它的行为很奇怪。当应用程序切换到后台并从启动器恢复时,之前的活动堆栈不会恢复,并且始终显示启动活动。如果我们从最近的应用程序列表中恢复应用程序,则活动堆栈将按预期恢复。只有从最近的应用程序列表中杀死任务后,一切才恢复正常。之前的活动堆栈将始终正确恢复,直到再次被另一个 apk 安装替换。
我的 Android 版本是 4.1.2,我正在使用它的默认启动器。
以下是启动活动的配置。
<activity android:name=".welcome.activity.SplashActivity" android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
谁知道奇怪的行为?提前致谢!