Android應用如何監聽本身被卸載呢,Android系統沒有提供這個回調方法。想一想感受是不可能監聽到的,本身的代碼都被卸載掉了,怎麼來執行操做來監聽呢。後來看到360這個流氓大哥,還真實現了,還挺穩定的。因而,在網上各類搜索。網上仍是有不少人討論,說怎麼怎麼着,來弄。我也是研究了好久。 html
網上的方案總結說來有 git
1.廣播,只能監聽到別人卸載。本身被卸載的時候,早就收不到廣播了 github
2.監聽log。這樣聽起來很靠譜,我寫代碼試過,能穩定監聽到,可是發送操做不靠譜。我反正沒發出去。 性能
最後,在這裏找到了一個靠譜的方案。思想就是監聽/data/data/本身的package路徑。當Android卸載你的時候,會先刪除這裏的文件。能夠輪詢監聽,這個地方他也給了一個優化的方案就是採用Android的文件監聽服務,這樣只用等待文件監聽服務的回調。沒有什麼性能問題。 測試
還有就是必須得用C來寫,我用Java寫過,是不行的。Java能監聽到,可是執行請求的時候太慢了。請求發不出去。 優化
這是我按照他的方案寫的demo。測試經過。完美運行。 spa
https://github.com/sevenler/Uninstall_Statics/commits/master htm
這個原文鏈接地址: blog