另外,我以前做过一个类似的,但要做成两个apk,互相监视。只要发现对方不存在,就又启动它。
这样除非两个同时在短时间内被一起杀掉。

解决方案 »

  1.   

    那就在你service的onDestroy里加启动,启动service自己
      

  2.   

    1,接收广播优先级:静态注册用最大优先级,再动态注册用最大优先级。int 就那么大。2,防被杀:
    a, 防被Low-mem-killer杀:如果你的应用能放到sys/app,设置android:persistent.
    b, 防被360杀:要看360有没有root权限,没有root权限的话,很多进程它是没法杀的,比如你把service startForeground(同时也能防被系统杀) . 有root权限的话,流氓就基本无敌了,不过如果你能sys/app + 系统签名,也是有办法的。
    c. Activity一般来说难以被杀,所以有界面的地方尽量用Activity,不要用Service + WindowManager.
      

  3.   

    这个方法不行。你可以自己做下尝试。360关闭程序使用的是强制结束应用的机制。onDestroy方法是不会被调用的。
      

  4.   


    现在我已经不用广播接受器接收了,我发现有些定制机很变态,程序根本收不到广播。所以我后来改成监听数据库了。
    防被杀很难办。我的服务进程已经是startForeground的了,还做了通知栏的显示,可以保证程序不被系统关闭的。但是360还是可以杀死我的进程。手机保证是没有root的。我现在不明白要怎么才能彻底保证程序不被杀死。
      

  5.   

    呵呵 我知道怎么注册优先级可以比360高的方法不是通过int int就那么大 但是你只要处理一下就可以 不过。
      

  6.   

    呵呵 我知道怎么注册优先级可以比360高的方法不是通过int int就那么大 但是你只要处理一下就可以 不过。不过不能说是不是,你不要吝啬好不好