当前位置: 代码迷 >> Android >> 关于android服务解决办法
  详细解决方案

关于android服务解决办法

热度:94   发布时间:2016-04-28 04:52:06.0
关于android服务
本帖最后由 LH806732 于 2014-06-30 20:05:16 编辑
根据目前了解的情况,服务启动分为2种方式startService()以及bindService()

1、使用startService()后,服务就无法与APP进行数据沟通。
2、使用bindService()后,如果APP退出了服务也跟着退出,但如果是因为按了返回键使APP进入后台而被系统杀了的情况就不妙。

有没有其他方式可以在Service和APP之间可以做到通讯,即使APP在后台被系统杀死服务仍然在运行,只有当APP主动让Service退出才正常退出

------解决方案--------------------
不行。了解下service的生命周期
------解决方案--------------------
< service  android:name =".RemoteService"  android:process =":remote" >  
         < intent-filter >  
                 < action  android:name ="com.demo.IMyService"  />  
         </ intent-filter >  
</ service >
主要是 android:process =":remote"这个属性,是将service作为一个单独的进程,这样就可以避免app被杀死,service也被杀死。
或者是使用一个广播,接收系统时间变化,判断当前service是否还在运行,如果没有运行,就启动service
  相关解决方案