我对 Android 生命周期模型的理解是,当onPause()
被调用时,我应该保存任何需要保存的状态,因为我的应用程序可以在我返回后的任何时候终止。我的目标是姜饼,所以onStop
可能永远不会被调用。
但是在我的应用程序中,某些状态被保存在远程服务器上。我会定期刷新此状态,但如果调用 onPause 我不确定正确的做法,因为我的理解是一旦 onPause 返回我的应用程序可能会被杀死。由于我必须在另一个线程中运行 android http 请求,这似乎有问题:如果我在 onPause 中启动请求然后返回,那么我的应用程序可能会在保存状态的远程请求完成(甚至启动!)之前被终止。
我在想我应该在睡觉的地方进行某种同步并等待请求工作,但首先我不确定我什至可以在 onPause 中做到这一点,其次,onPause 不应该花费很长时间完成,所以如果有网络延迟,这也可能导致问题。
当需要将状态刷新到远程服务器或通常通过某种需要单独线程的方法时,是否有一些推荐的方法在 onPause 中保存状态?