Android 安卓:我如何在不调用onCreate方法的情况下从后台恢复应用程序?

Android 安卓:我如何在不调用onCreate方法的情况下从后台恢复应用程序?,android,android-intent,android-lifecycle,Android,Android Intent,Android Lifecycle,当您按home按钮或其他按钮离开应用程序时,会显示overlay窗口。我想在触摸此窗口时执行操作,应用程序将恢复当前活动和数据。我知道如何用FLAG_ACTIVITY_NEW_TASK恢复应用程序,它可以工作,但这不是我想要的。我希望在简历开始时保留此活动的数据 谢谢。如果您的问题是保持数据处于活动状态,您应该查看ViewModel。这是一个来自谷歌本身的概念,你可以在那里存储你的用户界面数据 例如,获取用户列表并将其存储在ViewModel中。如果重新创建了相应的视图,ViewModel的实例

当您按home按钮或其他按钮离开应用程序时,会显示overlay窗口。我想在触摸此窗口时执行操作,应用程序将恢复当前活动和数据。我知道如何用FLAG_ACTIVITY_NEW_TASK恢复应用程序,它可以工作,但这不是我想要的。我希望在简历开始时保留此活动的数据


谢谢。

如果您的问题是保持数据处于活动状态,您应该查看
ViewModel
。这是一个来自谷歌本身的概念,你可以在那里存储你的用户界面数据

例如,获取用户列表并将其存储在ViewModel中。如果重新创建了相应的视图,ViewModel的实例将保留在内存中,您可以从该对象简单地获取它


更多信息:

如果您的问题是保持数据处于活动状态,您应该查看
ViewModel
。这是一个来自谷歌本身的概念,你可以在那里存储你的用户界面数据

例如,获取用户列表并将其存储在ViewModel中。如果重新创建了相应的视图,ViewModel的实例将保留在内存中,您可以从该对象简单地获取它


更多信息:

要以用户离开时的状态恢复任务,您只需完全按照Android希望恢复应用程序时所做的操作:

Intent intent = getPackageManager().getLaunchIntentForPackage(getPackageName()));
startActivity(intent);

这将使现有任务以其进入后台时的任何状态返回前台。

要以与用户离开时相同的状态恢复任务,您只需执行Android希望恢复应用程序时所执行的操作:

Intent intent = getPackageManager().getLaunchIntentForPackage(getPackageName()));
startActivity(intent);

这将使现有任务以其进入后台时的任何状态返回前台。

我的活动渲染具有当前位置的地图,导航,手动恢复时导航继续,我需要以编程方式应用此方法。我的活动渲染具有当前位置的地图,导航,当我手动恢复时,导航将继续运行,我需要以编程方式应用此方法。我认为您正在处理的问题并不存在。安卓在进入后台之前恢复活动。看见请更具体一点-什么对你不起作用?我认为你正在处理的问题并不存在。安卓在进入后台之前恢复活动。看见请更具体一点-什么东西不适合你?