不死服务
Service
后台运行的组件
默认不在单独进程里
运行在主线程
可以理解为无界面的activity
|
如何尽量保证自己不被杀死?
1. 尽量保证自己不容易被杀死.
2. 即使自己被杀死,快速复活能力,然后将杀死别人.
锁屏 外拨电话 短信到来 sd卡挂载,(注册这些事件,然后开启自己)
电量变化的广播事件(系统应用才能注册,小米miui是)
3. 91手机助手
两个进程互相守护(一个挂掉,另外一个开启它) 依赖电脑(应用被卸载,usb线插上电脑,又重新开启)
|
不死的服务Service:一个服务停止了,开启另外一个服务,另外一个服务挂了,又重新开启这个服务。 Service1.java
|
但下面这种情况,可以被杀死掉: 1、如果用户点击,强行停止,就会被杀死 2、如果遇到一些具备root权限的应用如lbe,使用linux命令 kill 9 cn.zengfansheng.undieservice 也可以杀死自己。 |
问题:这是由于开启服务时使用了startActivity(...)来开启一个服务 解决:startService(..) 11-23 07:18:10.534: E/AndroidRuntime(2021): Caused by: android.content.ActivityNotFoundException: Unable to find explicit activity class {cn.zengfansheng.receiverreboot/cn.zengfansheng.receiverreboot.SmsReceiverServices}; have you declared this activity in your AndroidManifest.xml? |