单击应用程序图标会破坏活动

时间:2015-07-27 09:12:02

标签: android

我在我正在开发的新应用中遇到一个奇怪的问题,如果我将应用发送到后台(主页按钮),然后使用应用图标重新启动应用,所有活动,除了根活动被销毁(在日志中我获取所有活动的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

这种情况与我的情况之间的区别在于,在这种情况下,主要活动是在其他活动之上启动的(您可以按回以返回之前的运行活动)。在我的情况下,其他活动被完全销毁,除了恢复的发射活动。

1 个答案:

答案 0 :(得分:2)

经过几天寻找解决方案..我终于找到了问题。 问题是为每个活动添加android:launchMode="singleTask"

我从除了root活动之外的所有活动中删除了它,现在它正在按我的意愿工作。