问题描述
- Android 开发在程序退出时的操作应该放在哪处理
-
目前有个android项目,在apk退出时要做一些向网络上报数据,之前我是放在主activity的ondestroy方法里的,后来发现当用户按home键,之后apk被系统kill的时候,是不会调用ondestroy的,这样我的上报处理就不会做了。请问这种处理应该怎么做,别说放在onstop里,我有多个activity,主activity跳转的时候就会onstop了,我是想apk整个退出时做处理,谢谢!
解决方案
没找到可行的方案,系统kill的时候,靠生命周期方法是捕捉不到的,最后用打点的方法,定时存储刷新要发送的内容,如果被kill,下次重启的时候检查下存储内容,把最后一次存储的信息发过去,虽然有点误差,不过还是可以接受的。
解决方案二:
反过来把上报放到 onResume onPause
解决方案三:
从写onKeyDown等方法在里面对hone键先进行拦截。在里面处理完你的东西后再让系统往下走
时间: 2024-12-26 21:37:52