例如,当我从 App A切换到 App B时,我认为 App A将成为“缓存的后台进程”。这是否意味着 App A使用的内存被复制到“磁盘(SD卡)”?A占用的内存是否可供其他App使用?
此外,当我切换回来时,如何恢复 App A ?如果有的话,是什么导致恢复延迟?
例如,当我从 App A切换到 App B时,我认为 App A将成为“缓存的后台进程”。这是否意味着 App A使用的内存被复制到“磁盘(SD卡)”?A占用的内存是否可供其他App使用?
此外,当我切换回来时,如何恢复 App A ?如果有的话,是什么导致恢复延迟?
只要 Android 将应用 A 留在内存中,它就会一直保留在内存中。如果你想通过这个转换来引导你的应用程序功能,你需要重写 OnPause() 和 OnResume()。例如。
@Override
protected void onPause(){
// YOUR CODE HERE
super.onPause();
}
@Override
protected void onResume(){
// YOUR CODE HERE
super.onResume();
}
当您按下主页按钮、接听电话等时会引发 Onpause。它让您有机会停止线程(告诉您的应用程序停止工作)并在失去焦点之前执行您必须执行的任何操作。现在不是保存数据的好时机,因为这可能需要很长时间,用户会期望应用程序立即消失。
当您再次打开应用程序时会抛出 OnResume,这是您再次启动线程的地方(告诉您的应用程序开始工作)