我需要总是有一个后台服务来同步我的Android应用程序和服务器。 我知道如何通过我的应用程序启动它,但是当Android关闭时,后台服务将会死亡。
如何使后台服务始终运行? (即使设备关闭然后再打开……)
我需要添加Android的后台服务的启动程序。 任何提示?
使用
在设备开启时启动服务。
在AndroidManifest.xml
:
在AndroidManifest.xml
添加权限:
在代码部分BootBroadcastReceiver
:
public class BootBroadcastReceiver extends BroadcastReceiver { static final String ACTION = "android.intent.action.BOOT_COMPLETED"; @Override public void onReceive(Context context, Intent intent) { // BOOT_COMPLETED” start Service if (intent.getAction().equals(ACTION)) { //Service Intent serviceIntent = new Intent(context, StartOnBootService.class); context.startService(serviceIntent); } } }
编辑:如果您正在谈论设备屏幕开/关,那么您需要注册
和
用户出现或屏幕打开时启动服务。
(Even when the device turns off and then turns on..
操作系统完成引导后广播ACTION_BOOT_COMPLETED。 您的应用可以通过请求清单中的权限来要求接收此通知:
http://blog.gregfiumara.com/archives/82
http://www.androidcompetencycenter.com/2009/06/start-service-at-boot/