活动流程:单击我的应用程序图标将显示Create MainActivity



在我的应用程序中,我从MainActivity导航到Activity B。然后按下HOME按钮,然后再次单击应用程序图标以最大化它。

它不是继续我的活动B,而是返回到MainActivity。

这是有道理的,因为在我的AndroidManifest.xml中,当你点击它的图标时,我使用普通的意图过滤器来启动MainActivity:

    <activity
        android:name=".MainActivity"
        android:launchMode="singleTask"
        android:label="MyApp"
        android:windowSoftInputMode="adjustPan">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

我查看了像facebook和twitter这样的流行应用程序,它们似乎都没有遇到这个问题——当你从facebook订阅源导航到朋友页面,然后按下主页按钮时。然后你再次点击应用程序图标,它仍然在你朋友的页面上。

这似乎只会在我点击应用程序图标时影响应用程序。例如,如果从MainActivity转到Activity B,按HOME按钮,然后按SQUARE按钮以显示我在后台运行的所有应用程序,选择我在后台的应用程序以再次最大化它,应用程序将正确返回到Activity B。

如何确保当您单击应用程序图标时,它是onResumes活动B?

从清单中删除android:launchMode="singleTask"

从Android启动模式文档,

"singleTask";以及";singleInstance";活动只能开始一项任务。它们始终位于活动堆栈的根。此外设备一次只能容纳一个活动实例——只有一个这样的任务。

来自安卓后台单任务文档,

系统创建一个新任务,并在新任务的根。但是,如果活动的实例已经存在于单独的任务中,系统将意图路由到通过调用其onNewIntent()方法而不是创建一个新实例。只有一个活动实例可以同时存在。

注意:尽管活动是在新任务中开始的,但"上一步"按钮仍然将用户返回到上一个活动。

希望这对你有帮助。

相关内容

  • 没有找到相关文章

最新更新