Quinn_JR 2017-07-10 05:22 采纳率: 11.8%
浏览 1958

Android如何实现Service不被销毁

android 怎么实现QQ或者微信那种杀不死的服务,运行后,要有一个service始终保持在后台运行,不管用户作出什么操作,都要保证service不被kill,这可真是一个难题。

  • 写回答

3条回答 默认 最新

  • Sias丶小殇 2017-07-10 05:45
    关注

    就是所说的Service保活,现在Google开发的Android系统,对这方面做优化,是不允许应用长期后台的Service运行的。
    现在国内一些大的应用厂商都是跟手机生产厂商联系,签订白名单,手机生产厂商定制出手机UI时就对那些应用白名单,能后台运行。
    我前一段时间写过一个应用,用到了Service后台保活,Android里写两个Service,例如:Service1,Service2
    当Service1被onDestroy时,让它开启Service2,当Service2被onDestroy时,让它再开启Service1。Service1和Service2代码一样即可。

    // Service1的
     @Override
        public void onDestroy() {
            Intent i = new Intent(this, Service2.class);
            startService(i);
            super.onDestroy();
        }
    
        // Service2的
        @Override
        public void onDestroy() {
            Intent i = new Intent(this, Service1.class);
            startService(i);
            super.onDestroy();
        }
    
    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题