Android 开机自启动service实践
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 开机自启动service实践相关的知识,希望对你有一定的参考价值。
参考技术A android 设备启动的时候,会发送android.intent.action.BOOT_COMPLETED的广播,监听这个广播来实现开机自启动。1) 创建需要的service和 BroadcastReceiver
2) 在AndroidManifest.xml 注册service 和BroadcastReceiver
3)申明权限
```
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
Linux 使用systemd service 实现开机自启动
目标
使用systemd实现开机启动某项服务
参考
How To Use Systemctl to Manage Systemd Services and Units | DigitalOcean
systemctl常用命令
启动或停止服务
systemctl start demo-start.service
systemctl stop demo-start.service
开启/关闭 开机自启动服务
systemctl enable demo-start.service
systemctl disable demo-start.service
重新加载服务
systemctl daemon-reload
查看服务状态
systemctl status demo-start.service
查看现有的service
ll /usr/lib/systemd/system/***.service
cd /etc/systemd/system/multi-user.target.wants/
注意: 使用systemctl 开机自启动的服务不能包含相对路径。 如java web项目的配置文件, log 文件等, 都需要指定绝对路径, 不能使用相对路径
例子:使用Linux系统开机自启动/home/demo目录下的服务 demo-web.war
/home/demo 目录下有如下文件
- demo-web.war
- application.properties
- start.sh
- demo-start.services
start.sh
#! /bin/sh
nohup java -jar -Dspring.config.location=/home/demo/application.properties /home/demo/demo-web.war & echo $! > /home/demo/piddemo.file
demo-start.service
[Unit]
Description=start demo web
[Service]
Type=forking
ExecStart=/bin/bash /home/demo/start.sh
[Install]
WantedBy=multi-user.target
使用systemd实现开机自启动demo-web.war
sudo cp /home/demo/demo-start.service /etc/systemd/system
sudo systemctl enable demo-start.service
sudo systemctl daemon-reload
测试:重启Linux服务器,查看demo-web.war服务是否启动
以上是关于Android 开机自启动service实践的主要内容,如果未能解决你的问题,请参考以下文章
Linux 使用systemd service 实现开机自启动
Linux 使用systemd service 实现开机自启动
Linux 使用systemd service 实现开机自启动
Ubuntu20.04设置开机自启脚本开机自启命令(ubuntu自启,ubuntu开机自启)rc(run command)(systemd)(/etc/rc.local)(开机启动原理)开机自启动