【问题标题】:Examples for Android Launch modesAndroid 启动模式示例
【发布时间】:2017-03-04 05:27:13
【问题描述】:

我发现很难理解每个launch modes 将在 Android 中使用的确切情况。谁能给我一些例子来帮助理解各种模式什么时候合适?

【问题讨论】:

    标签: android


    【解决方案1】:

    BrowserAlarm Clock 应用程序之间,您涵盖了所有四种启动模式:

    1. BrowserActivity 使用 singleTask。一次只有一个浏览器活动,它不会成为发送它打开网页的意图的部分任务。虽然它可能会在您回击时返回到最近启动的任何内容,但它实际上已固定在其自己的任务活动堆栈的底部。它将与它启动的活动(如书签)共享其任务。

    2. BrowserBookmarksPage 使用 singleTop。虽然此活动可以有多个实例,但如果在任务的活动堆栈顶部已经有一个,它将被重用并调用onNewIntent()。这样,如果多次启动书签活动,您只需回击一次即可返回浏览器。

    3. AlarmClock 使用标准。用户可以启动此活动的多个实例,这些实例可以是任何任务的一部分,也可以是活动堆栈中的任何位置。作为一个相当简单的应用程序,它并不需要严格控制其活动。

    4. AlarmAlert 使用 singleInstance。一次只有一个警报活动,它始终是它自己的任务。它启动的任何东西(如果有的话)都会成为它自己的新任务的一部分。

    【讨论】:

    • 好的,所以当您在 BrowserBookmarksPage 中打开一个目录时,它实际上会启动一个新活动,但 singleTop 可以轻松返回浏览器。
    • 我认为 singleInstance 和 Single task 会相反?不是吗?你可以参考这里smartandroidians.blogspot.in/2010/04/…
    • 链接到official docs,以防有人感兴趣。
    【解决方案2】:

    官方文档有点混乱,所以这里有一个表格来帮助。

    http://androidisland.blogspot.com/2010/12/activity-launch-modes-simple.html

    【讨论】:

    • 哇...这张图表非常有用...很棒!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-25
    • 2013-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多