维护旧项目遇见一个bug,在activity中上传视频到服务器,onPause中做了暂停上传功能,onDestroy时如果还未上传完就取消上传,但遇见一个问题,当用户上传视频切换到后台,把APP强杀了,这时候只会走栈最底层activity(一般是MainActivity)的onDestroy,当前activity的onDestroy取消上传就走不到了。
就想着监听进程被强杀时,判断所有有上传视频功能的activity有没有暂停上传的,有就取消,可是太懒不想写这么多,就想着在MainActivity的onDestroy中去发个通知说应用要完全退出了,你们该释放的资源就释放吧,正好项目中集成了EventBus就用它发个通知,但想想这也不严谨,因为有可能MainActivity是因为内存不够被杀死的啊,要这时候app还在用呢,但一想我这项目的要求也没有那么严谨,接到通知在判断一下上传视频的界面是不是在前台就好了,不是直接取消上传。
不严谨的解决办法,但够实现需求了,就这样吧,继续修上古bug,加班写新需求。
自我安慰一下重构在同一改吧。
网友评论