Android应用如何监听自己被卸载呢,Android系统没有提供这个回调方法。想想感觉是不可能监听到的,自己的代码都被卸载掉了,怎么来执行操作来监听呢。后来看到360这个流氓大哥,还真实现了,还挺稳定的。于是,在网上各种搜索。网上还是有很多人讨论,说怎么怎么着,来弄。我也是研究了很久。
网上的方案总结说来有
1.广播,只能监听到别人卸载。自己被卸载的时候,早就收不到广播了
2.监听log。这样听起来很靠谱,我写代码试过,能稳定监听到,但是发送操作不靠谱。我反正没发出去。
最后,在这里找到了一个靠谱的方案。思想就是监听/data/data/自己的package路径。当Android卸载你的时候,会先删除这里的文件。可以轮询监听,这个地方他也给了一个优化的方案就是采用Android的文件监听服务,这样只用等待文件监听服务的回调。没有什么性能问题。
还有就是必须得用C来写,我用Java写过,是不行的。Java能监听到,但是执行请求的时候太慢了。请求发不出去。
这是我按照他的方案写的demo。测试通过。完美运行。
https://github.com/sevenler/Uninstall_Statics/commits/master
这个原文连接地址:
http://www.cnblogs.com/zealotrouge/p/3157126.html
http://www.cnblogs.com/zealotrouge/p/3159772.html
来源:oschina
链接:https://my.oschina.net/u/559701/blog/151400