首页 > 解决方案 > 在启动时运行 Android 守护程序

问题描述

我用 C 语言为 Android 编写了一个可执行文件。它按照 /system/bin 中的预期编译并加载到设备中。我可以通过 adb shell 运行它,它按预期工作。我不知道如何让它在启动时运行。我在 init.rc 中添加了以下内容:

service mydaemon /system/bin/mydaemon
    user root
    seclabel u:r:su:s0
    disabled

此外,在“启动时”部分下,我添加了:

start mydaemon

该应用程序不会在启动时启动,当我尝试使用 logcat 时,日志中不会出现任何关于它的信息。

我已经为 seclabel 尝试了几种不同的值。我尝试将其声明为各种类的一部分,但没有任何效果。我在网上找到了一些建议,但它们要么不适用(例如,它们使用了自己的 .rc 文件),要么它们真的很旧,不再适用。

有人可以告诉我让我的应用程序在启动时运行吗?

标签: androidcandroid-source

解决方案


我想到了。Yong在上面的评论中是正确的。我需要添加一个新的 sepolicy。有关更多信息,请参见以下链接:

https://source.android.com/security/selinux/device-policy


推荐阅读