从“最近的应用程序”启动应用程序和点击应用程序图标有什么区别

问题描述 投票:0回答:2

我正在开发大型项目,因此有一些逻辑可以保存应用程序状态,然后在来自后台时打开正确的活动(片段)。 但无论如何,我发现如果用户浏览我的应用程序然后最小化它 - android 在以下情况下会以不同的方式从后台打开它:

  1. 用户点击应用程序图标(行为:当应用程序最小化时,用户可以看到家庭活动,无论他在哪里)
  2. 用户从android“最近的应用程序”中选择应用程序(行为:当应用程序最小化时,用户准确地看到他所看到的内容)

那么,这两种方式从后台启动应用程序有什么区别呢?我一直认为这是相同的机制,但显然我错了。

感谢您的回答

android task
2个回答
9
投票

您应该关注以下文档ActivityTasks。简而言之:如果用户从最近启动应用程序,您将在 onStart 之前收到 onRestart (如果没有 onCreate,则意味着您的应用程序只是“暂停”)。您可以使用 onSaveInstanceState() 保存屏幕状态。但一般来说,从图标和最近的应用程序开始 - 不同的应用程序行为,您应该为此方式提供正确的代码。

UPD 如下所述,意外行为的根本原因是附加的启动模式属性。


0
投票

根据我作为

Android
用户的经验,两者是相同的。

我们通常看到的区别是我们如何关闭应用程序

  1. 按后退按钮直到应用程序关闭/

    finish()

    在此状态下,无论我们如何打开应用程序,它都会进入主屏幕

  2. 按主页按钮

    此状态取决于应用程序。如果应用程序不处理任何

    Activity
    ,应用程序将与第一个状态相同。但是,如果应用程序处理类似当
    onPause()
    Activity
    然后
    finish()
    应用程序时的情况,那么无论您使用应用程序图标或最近的应用程序打开什么,都将提供相同的结果。

如果我错了请纠正我

© www.soinside.com 2019 - 2024. All rights reserved.