首页 > 解决方案 > 如何在 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 的任何线索,请帮助我。

标签: android-10.0selinuxsystem-services

解决方案


编辑文件 /system/sepolicy/private/service_contexts 并添加这一行

service_name u:object_r:service_name:s0

重新编译 AOSP。


推荐阅读