自实现的 android.hardware.xxxx@1.0-service 没有开机自启动

问题描述

push android.hardware.xxxx@1.0-service/vednor/bin/hw;

push 'android.hardware.xxxx@1.0-service.rc' 到 /vendor/etc/init/;

reboot 设备后,xxx 服务没有自动启动。

经检查 rc 文件与同类 service 无差异。

问题分析

直接运行 xxx 服务正常。同时经检查 rc 文件与同类 service 无差异。

怀疑是权限问题。

使用 ls -al -Z 查看,rc 文件权限相同,但 xxxx 文件 SELinux 权限不同:

xml 复制代码
-rwxr-xr-x 1 root   shell  u:object_r:hal_mcucomm_default_exec:s0                   11648 2009-01-01 08:00 android.hardware.mcucomm@1.0-service
-rwxr-xr-x 1 root   shell  u:object_r:vendor_file:s0                                  82856 2024-08-02 16:25 android.hardware.xxxx@1.0-service
-rwxr-xr-x 1 root   shell  u:object_r:hal_settings_default_exec:s0                  29904 2009-01-01 08:00 android.hardware.settings@1.0-service

所以问题应该是 SELinux 权限不同导致。

问题解决

使用命令修改 xxxx 文件 SELinux 权限与同类一致即可。

chcon u:object_r:hal_mcucomm_default_exec:s0 android.hardware.xxxx@1.0-service
相关推荐
WeiComp1 小时前
Android数据存储——文件存储、SharedPreferences、SQLite、Litepal
android·数据库·sqlite·litepal
是店小二呀1 小时前
【C++】C++11新特性详解:可变参数模板与emplace系列的应用
android·c++
忘忧记8 小时前
Python MySQL SQLServer操作
android
万岳科技系统开发8 小时前
外卖系统开发实战:从架构设计到代码实现
android·小程序·开源
standxy9 小时前
通过轻易云平台实现聚水潭数据高效集成到MySQL的技术方案
android·数据库·mysql
he_wen_jian11 小时前
Android 项目引入gradle Connect timed out
android
哎呦没12 小时前
企业OA管理系统:Spring Boot技术实现与案例研究
android·spring boot·后端
李新_13 小时前
一文聊聊Flutter多业务混合工程实践
android·flutter
weixin_SAG16 小时前
7天掌握SQL - 第三天:MySQL实践与索引优化
android·sql·mysql
疯狂的皮卡18 小时前
【安卓脚本】Android工程中文硬编码抽取
android