Android 进程常驻(0)----MarsDaemon使用说明
版權聲明:本文為博主原創文章,未經博主允許不得轉載。
這是一個輕量級的庫,配置幾行代碼,就可以實現在Android上實現進程常駐,也就是在系統強殺下,以及360獲取root權限下,clean master獲取root權限下都無法殺死進程
支持系統2.3到6.0
支持大部分設備,包括三星,華為,oppo,nexus,魅族等等
可以簡單對開機廣播進行保護
github地址:
https://github.com/Marswin/MarsDaemon
原理分析:
Android 進程常駐(0)----MarsDaemon使用說明
Android 進程常駐(1)----開篇
Android 進程常駐(2)----細數利用android系統機制的保活手段
Android 進程常駐(3)----native保活5.0以下方案推演過程以及代碼詳述
Android 進程常駐(4)----native保活5.0以上方案推演過程以及代碼詳述
Android 進程常駐(5)----開機廣播的簡單守護以及總結
正文:
Marsdaemon配置需要三步:
1、明確自己需要常駐的進程service,創建一個和他同進程的receiver,然后在另外一個進程中創建一個service和一個receiver,并寫在Manifest中。進程名可以自定義
見/MarsDaemon/DemoMarsdaemon/src/main/AndroidManifest.xml
service1是應用中有業務邏輯的需要常駐進程的service,其他三個組件都是額外創建的,里面不要做任何事情,都是空實現就好了
2、用你的Application繼承DaemonApplication,然后在回調方法getDaemonConfigurations中返回一個配置,將剛才注冊的進程名,service類名,receiver類名傳進來。
代碼/MarsDaemon/DemoMarsdaemon/src/main/Java/com/marswin89/marsdaemon/demo/MyApplication1
此時如果你想在自己的application里面復寫attachBaseContext方法的話,發現他已經被寫為final,因為我們需要搶時 間,所以必須保證進程進入先加載Marsdaemon,如果你想在attchBaseContext中做一些事情的話,可以復寫 attachBaseContextByDaemon方法。
如果你的Application已經繼承了其他的Application類,那么可以參考Appliation2,在Application的 attachBaseContext的時候初始化一個DaemonClient,然后調用他的onAttachBaseContext同樣可以實現,當然 了,他同樣需要一個配置來告訴他我們剛才在menifest中配的信息
代碼代碼/MarsDaemon/DemoMarsdaemon/src/main/java/com/marswin89/marsdaemon/demo/MyApplication2
3、第三步就是嘗試去殺掉進程
總結
以上是生活随笔為你收集整理的Android 进程常驻(0)----MarsDaemon使用说明的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CentOS开启与关闭防火墙
- 下一篇: 安装SQL2012 提示 setup a