2018年:Activity的onStop方法是否属于可被杀死(不保证被调用)的方法?
关于Activity中数据保存的选择:onPause() vs onStop()
我一直坚持在onPause()方法里保存应用数据,而不是onStop()——核心原因就是我坚信onStop()不能保证一定会被系统调用。
根据Android官方文档的说明:
对于标记为killable的方法,在该方法返回后,承载Activity的进程可能会被系统随时终止,且不会执行后续任何代码。因此,你应当使用
onPause()方法来写入需要持久化的应用数据。
毕竟当系统资源紧张时,进程可能在onPause()执行完成后就被直接终止,完全没机会走到onStop()这一步。如果把数据保存放在onStop()里,一旦遇到这种情况,用户的未保存数据就会丢失,这也是我始终选择onPause()的关键原因。
内容的提问来源于stack exchange,提问作者Cheok Yan Cheng
相关产品推荐
相关产品推荐

