6

Android 5.1 を搭載したターゲット ボードで起動時に実行可能ファイルを実行したいので、init.rc にこれを追加します。

on boot
    start myservice

service myservice /system/bin/myservice
    #class main
    user root
    group root
    #oneshot   

開梱と再梱包の仕事をしました。
ただし、変更が行われると、画面は印刷され続けます。

 init warning: Service myservice needs a SELinux domain defined. Please fix.
 type=1400 ... avc:denied ... scontext ... tcontext ... #some annoying warning messages like this

SELinux は私にとって巨大なプロジェクトのようです。私はそれを避けたいだけです。私は2つのアプローチを試みました:

1. setenv kernelargs 'console=ttyS0,115200n8 rootdelay=1 selinux=0' and saveenv
2. set enforce 0

方法 1の場合printenv、結果は次のようになります。

kernelargs=console=ttyS0,115200n8 rootdelay=1 selinux=0

ご覧のとおり、変更が加えられました。ただし、再起動後も警告メッセージが表示され続けます。
方法 2 については、次のように述べています。

Could not set enforce status. Permission denied.

だから今、私はジレマに閉じ込められており、どこに行けばいいのかわからない. 私の質問:

    1. Androidで許可モードを無効または設定する方法を知っている人はいますか?
    1. 新しいサービスのドメインを定義する場合、どのファイルを変更する必要がありますか?

さらに、ls -Z /system/bin/myserviceこれを与えます:

u:object_r:system_file:s0
4

3 に答える 3