我有一个令人费解的问题。如果我在任何设备/模拟器上从Eclipse部署我的应用程序,我可以使用Back和Home按钮来最小化它,然后我可以单击启动器图标来恢复它。
如果我拿了apk,把它放在手机上并安装它(使用Astro文件管理器),然后按Back或Home,当我再次点击启动器图标时,我的应用程序将被重新创建而不是恢复:活动没有被摧毁。
这与Android开发者网站上有关活动及其生命周期的所有内容相违背。
例如,当用户使用“后退”按钮时,我就会这样做:
@Override
public void onBackPressed() {
moveTaskToBack(true);
}
然而,当我点击其启动器图标时,我的应用程序会重新创建。有什么想法吗?
答案 0 :(得分:0)
这完全适用于所有关于活动生命周期的内容。
如果活动暂停或停止,系统可以放弃活动 从记忆中要么完成要么完全杀死它 处理。当它再次显示给用户时,它必须完全显示 重新启动并恢复到之前的状态。
http://developer.android.com/reference/android/app/Activity.html
您的应用程序未“最小化”。在Android中没有最小化的东西。它不是Linux,Windows或OSX。
答案 1 :(得分:0)
这是真的,按Back会杀死你的活动。但是,为什么这是一个问题呢? Android提供了一种机制来保存您的活动状态并能够恢复。
查看活动生命周期:http://developer.android.com/reference/android/app/Activity.html#ActivityLifecycle
这是关于保存活动状态的必读内容:http://developer.android.com/reference/android/app/Activity.html#SavingPersistentState