android-10.0 - 如何在 Android Q 中创建后台系统服务
问题描述
我正在尝试创建一个系统服务,该服务在系统启动后运行,除了 sepolicy 文件更新之外,我已遵循所需的步骤。我已经提到了https://android.jlelse.eu/system-service-in-aosp-750007d39555。目前我的服务没有运行,因为 avc denied 错误即将到来。我在许可模式下运行。我试图在 /system/sepolicy/public/service.te 中的 service.te 和 conexts.te 中添加所需的更改。我收到编译错误 [6:49 PM] Kumar, Rathnakaram Anil (uic40644)
[下午 4 点 03 分] 库马尔,Rathnakaram Anil (uic40644)
嗨 Ashwini,我正在尝试为我的测试服务添加 selinux 权限,但遇到错误:[13% 18579/140712] build out/target/product/caaf_denali_pegasus/obj/ETC/sepolicy_freeze_test_intermediates/sepolicy_freeze_test FAILED: out/target/product/caaf_denali_pegasus /obj/ETC/sepolicy_freeze_test_intermediates/sepolicy_freeze_test /bin/bash -c "(diff -rq -x bug_map system/sepolicy/prebuilts/api/29.0/public system/sepolicy/public) && (diff -rq -x bug_map system/sepolicy /prebuilts/api/29.0/private system/sepolicy/private) && (touch out/target/product/caaf_denali_pegasus/obj/ETC/sepolicy_freeze_test_intermediates/sepolicy_freeze_test)" 文件系统/sepolicy/prebuilts/api/29.0/private/service.te和 system/sepolicy/private/service.te 不同文件 system/sepolicy/prebuilts/api/29。0/private/service_contexts 和 system/sepolicy/private/service_contexts 不同。
我找不到有关如何更新新服务的 sepolicy 的任何线索,请帮助我。
解决方案
编辑文件 /system/sepolicy/private/service_contexts 并添加这一行
service_name u:object_r:service_name:s0
重新编译 AOSP。
推荐阅读
- flutter - Flutter - 在导航期间创建固定 AppBar 的最佳实践是什么
- ios - 如何在 Swift 4.2 中为 UIViewController 生成 hashValue
- c# - 如何使用共享访问签名从 Azure 的密钥库中获取密钥?
- perfino - Perfino-如何监控 Oracle http server 11g
- javascript - 根据行号隐藏和显示表格行
- javascript - Angular 2合并相同的变量号
- xpath - 空手道 - 使用命名空间解析 XML
- flutter - 打开应用程序时,除了第一次打开外,如何一直做一个动作
- android - Android kotlin - 应用程序不显示吐司
- reactjs - react-router 中的每次推送/替换之前如何更改 url?