0

4.0.4 デバイスは、 --user オプションなしでサーバーを正常に起動しますが、 --user オプションを指定すると失敗します。4.2.1 デバイスには --user オプションが必要であり、それがないと失敗します。

すべての Android デバイスで動作するようにサービスを開始するにはどうすればよいですか?

または、可能でない場合、 --user がいつ必要になるかを判断する基準は何ですか?

$ adb shell getprop ro.build.version.release
4.0.4

$ adb shell am startservice --user 0 -ei 123 -a com.a.activity.myservice
Error: Unknown option: --user
usage: am [subcommand] [options] 
   { usage info deleted

$ adb shell getprop ro.build.version.release
4.2.1

$ adb shell am startservice  -ei 123 -a com.a.activity.myservice
Starting service: Intent { act=com.a.activity.myervice (has extras) }
~/dev/dcf/Applications/Spin (master) $ adb shell am startservice  -ei 123 -a com.a.activity.myservice
Starting service: Intent { act=com.apportable.a.myservice (has extras) }
java.lang.SecurityException: Caller uid=2000 is not privileged to communicate with user=-2
    at android.os.Parcel.readException(Parcel.java:1425)
4

1 に答える 1