Android怎么让一个service开机自动启动

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android怎么让一个service开机自动启动相关的知识,希望对你有一定的参考价值。

参考技术A android中,当Service被kill后,如果重启需要使用BroadcastReceiver来实现,即广播接收者,例如利用BroadcastReceiver注册网络广播或者开关机广播,当接收到广播后直接启动service,这样就可以保证service被kill后,自动启动。
实现代码:
1.在配置文件AndroidManifest.xml中向系统注册BroadcastReceiver
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
</intent-filter>

2.需要添加相应权限
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

3.在Receiver中就可以添加开机,或者网络状态改变后需要进行的操作
public class BootCompletedReceiver extends BroadcastReceiver
@Override
public void onReceive(Context context, Intent intent)



4.执行操作,Intent intent = new Intent(context,Service.class); context.startService(intent); 这样即可开机,或者网络状态改变后启动Service了。
参考技术B 监听开机广播啊。

以上是关于Android怎么让一个service开机自动启动的主要内容,如果未能解决你的问题,请参考以下文章

如何让软件自动运行?

Android中实现开机自动启动服务(service)实例

请教在windows下面让node服务器开机自启动有没有啥好办法

如何让windows安全中心服务开机自动启动

Linux 设置开机自动运行脚本

CentOS 怎么让 Strongswan IPSec 开机自动启动