这方面查了好久,比较有意义的文章有《关于 Android 进程保活,你所需要知道的一切》,我也是使用了其中的灰色保活方式,但是测试过程中,测试手机使用环境单一的情况下,APP保活率还是不错的,但是如果是正常使用的手机上,经常会停止定位。
已经让正常使用的用户关闭了手机上所有类似省电模式的功能,开启了后台保护,应该是能排除厂商定制系统对APP的限制。既然如此,原因就在于进程挂掉了。
关于这个问题,我确实找不到好的方式,也和公司解释了其中的原理,我知道还有个底层白名单,但是这个对于我们公司而言是不切实际的,所以我就没提了。
有大神研究过这方面的内容吗,怎么处理才能保证这个APP项目能顺利进行下去?

解决方案 »

  1.   

    可以试试现在市场上的一些推送厂家的sdk ,他们尽量会保证自己不被杀死,或者有其他进程相互自启,保证自己的推送率,这样推送能成功,你的app就可以被唤醒吧。能唤醒就能定位吧。  感觉上没毛病,哈哈。
      

  2.   

    你这属于流氓行为,从技术上来讲 可以参考http://blog.csdn.net/two_water/article/details/52126855 
      

  3.   

    别说灰色保活,就连双进程守护在安卓5.0+都失效了,你可以联系厂商做成系统app或加入白名单,如果没那实力,第三方app还是老老实实的做引导页引导用户加白名单吧
      

  4.   

    探讨一种新型的双进程守护应用保活方法 http://blog.csdn.net/andrexpert/article/details/53485360 我之前写的,现在已经用在公司项目中,5.0 6.0绝对杀不死,除非卸载
      

  5.   

    没戏,7.0以下可以,7.0以上不行,jni里面fork子线程都会被杀死,最好用户装了两个app,相互唤醒,一个app7.0以上做不到