【发布时间】:2015-10-17 09:41:19
【问题描述】:
我在当前正在开发的新应用程序中遇到一个奇怪的问题,如果我将应用程序发送到后台(主页按钮),然后使用应用程序图标重新启动应用程序,除根以外的所有活动活动被销毁(在日志上我得到所有活动的 OnDestroy,除了调用 OnResume 的根活动)。
如果我将它发送到后台并从当前任务中恢复它,它会恢复应用程序。
我已将android:launchMode="singleTask" 添加到应用清单上的所有活动中,但没有任何区别。
各项活动正常启动:startActivity(new Intent(this, nextClass));
有没有办法在按下应用图标时恢复应用?
AndroidManifest.xml
<application
tools:replace="android:icon"
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme"
android:screenOrientation="landscape"
android:configChanges="keyboardHidden|orientation|screenSize"
android:name="com.example.game.classes.App">
<activity
android:name=".LaunchScreenActivity"
android:label="@string/app_name"
android:screenOrientation="landscape"
android:launchMode="singleTask"
android:configChanges="keyboardHidden|orientation|screenSize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".HomeActivity"
android:label="@string/app_name"
android:screenOrientation="landscape"
android:launchMode="singleTask"
android:configChanges="keyboardHidden|orientation|screenSize"/>
<activity
android:name=".PlayActivity"
android:label="@string/app_name"
android:screenOrientation="landscape"
android:launchMode="singleTask"
android:configChanges="keyboardHidden|orientation|screenSize" />
.
.
.
编辑:解释为不重复 App restarts rather than resumes
这种情况和我的不同之处在于,在这种情况下,主要活动是在其他活动之上启动的(您可以按返回以返回到之前正在运行的活动)。在我的情况下,除了启动活动被恢复之外,其他活动都被完全破坏了。
【问题讨论】:
-
老实说,我四处搜索并没有注意到这个问题。这种情况与我的主要区别在于,在他的情况下,如果您按“返回”,您将返回到之前的跑步活动。在我的情况下,如果你按下返回,你会退出应用程序(当你按下应用程序图标时,之前正在运行的活动被破坏)
标签: android