Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 安卓-让活动保持活力_Android - Fatal编程技术网

Android 安卓-让活动保持活力

Android 安卓-让活动保持活力,android,Android,我有一个令人费解的问题。如果我从Eclipse在任何设备/模拟器上部署我的应用程序,我可以使用Back和Home按钮来最小化它,然后我可以单击launcher图标来恢复它 如果我拿起apk,将其放在手机上并安装(使用Astro文件管理器),然后按Back或Home,当我再次单击launcher图标时,我的应用程序将重新创建而不是恢复:活动不会被破坏 这与android开发者网站上关于活动及其生命周期的所有内容背道而驰 例如,当用户使用“后退”按钮时,我会这样做: @Override public

我有一个令人费解的问题。如果我从Eclipse在任何设备/模拟器上部署我的应用程序,我可以使用Back和Home按钮来最小化它,然后我可以单击launcher图标来恢复它

如果我拿起apk,将其放在手机上并安装(使用Astro文件管理器),然后按Back或Home,当我再次单击launcher图标时,我的应用程序将重新创建而不是恢复:活动不会被破坏

这与android开发者网站上关于活动及其生命周期的所有内容背道而驰

例如,当用户使用“后退”按钮时,我会这样做:

@Override
public void onBackPressed() {
    moveTaskToBack(true);
}

然而,当我单击它的启动程序图标时,我的应用程序被重新创建。有什么想法吗?

这正是关于活动生命周期的所有内容

如果某个活动被暂停或停止,系统可以删除该活动 通过要求它完成,或者简单地杀死它的 过程当它再次显示给用户时,必须完全 重新启动并恢复到以前的状态


你的申请不是“最小化”。安卓系统中没有最小化的东西。这不是Linux、Windows或OSX。

没错,按后退键会扼杀你的活动。然而,为什么这是一个问题?Android提供了一种机制来保存您的活动状态并能够继续

查看活动生命周期:


这是保存活动状态时必须阅读的内容:

查看活动生命周期
onResume()
被调用。检查。要么是手机关闭应用程序以释放内存(系统可以随时执行),要么是重新创建活动,因为它位于不同的屏幕方向。使用logcat,一切都在那里供您分析!呃,打扰一下?它使用Linux内核,但Android肯定不是Linux发行版。德夫、系统V或glibc在哪里?所有用户空间组件的开源存储库在哪里?您不妨说“iOS是UNIX”。我看到许多Android开发者试图把Android和Linux一样对待,这通常不是一个好结果。当然,它不是传统的linux发行版。iOS是FreeBSD之上的GUI。虽然这可以解释为随机正确,但当我的系统使用我5%的资源并100%显示完全相同的行为(关闭我的应用程序)时,它看起来并不是那么随机。按“后退”键不会扼杀我的活动。请读我写的。它将其移到后面(moveTaskToBack),当再次单击启动程序图标时,活动将被重新创建。