草庐IT

android - SELinux Permission Denied for a new framework service in android

coder 2023-12-19 原文

我已经按照 Texas Instruments 中的教程在早期版本 (4.4) 的 Android Framework 中添加了一个新的系统服务。

但是当我尝试在 Android Lollipop 中做类似的事情时,SELinux 策略拒绝我这样做。 这是 logcat 的输出。

05-11 15:49:51.362   248   248 I SystemServer: Test Service Starting
05-11 15:49:51.364   248   248 I TestManagerService: Started Test Manager Service
05-11 15:49:51.370    54    54 E SELinux : avc:  denied  { add } for service=TestManagerService scontext=u:r:system_server:s0 tcontext=u:object_r:default_android_service:s0 tclass=service_manager
05-11 15:49:51.371    54    54 E ServiceManager: add_service('TestManagerService',28) uid=1000 - PERMISSION DENIED
05-11 15:49:51.378   248   248 E SystemServer: Failure starting TestManagerService
05-11 15:49:51.378   248   248 E SystemServer: java.lang.SecurityException
05-11 15:49:51.378   248   248 E SystemServer:  at android.os.BinderProxy.transactNative(Native Method)
05-11 15:49:51.378   248   248 E SystemServer:  at android.os.BinderProxy.transact(Binder.java:496)
05-11 15:49:51.378   248   248 E SystemServer:  at android.os.ServiceManagerProxy.addService(ServiceManagerNative.java:150)
05-11 15:49:51.378   248   248 E SystemServer:  at android.os.ServiceManager.addService(ServiceManager.java:72)
05-11 15:49:51.378   248   248 E SystemServer:  at com.android.server.SystemServer.startOtherServices(SystemServer.java:551)
05-11 15:49:51.378   248   248 E SystemServer:  at com.android.server.SystemServer.run(SystemServer.java:257)
05-11 15:49:51.378   248   248 E SystemServer:  at com.android.server.SystemServer.main(SystemServer.java:171)
05-11 15:49:51.378   248   248 E SystemServer:  at java.lang.reflect.Method.invoke(Native Method)
05-11 15:49:51.378   248   248 E SystemServer:  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:723)
05-11 15:49:51.378   248   248 E SystemServer:  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:613)

我不想禁用 SELinux 策略。我只希望政策也允许我的新服务。我应该怎么办?

最佳答案

检查此链接:http://androidosp.blogspot.com.tr/2014/11/selinux-seandroid-exceptions-for-system.html

您可以简单地转到:/external/sepolicy/service_contexts

并在那里添加您的新服务。而已!

关于android - SELinux Permission Denied for a new framework service in android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30165852/

有关android - SELinux Permission Denied for a new framework service in android的更多相关文章

随机推荐