2017-03-16 162 views
1

我試圖使用使用命令行亞行的意圖,觸發活動:ADB命令行啓動活動權限

adb shell am start 
-a android.intent.action.VIEW 
-c android.intent.category.DEFAULT 
-t vnd.google.android.package/vnd.google.android.package_something 
-n com.google.android.package/com.google.android.apps.package.SomeActivity 

,但它會引發安全異常:

Starting: Intent { act=android.intent.action.VIEW cat=[android.intent.category.DEFAULT] typ=vnd.google.android.package/vnd.google.android.package_something cmp=com.google.android.package/com.google.android.apps.package.SomeActivity } 
java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.VIEW cat=[android.intent.category.DEFAULT] typ=vnd.google.android.package/vnd.google.android.package_something flg=0x10000000 cmp=com.google.android.package/com.google.android.apps.package.SomeActivity } from null (pid=31536, uid=2000) requires com.google.android.package.START_ACTIVITY 
     at android.os.Parcel.readException(Parcel.java:1620) 
     at android.os.Parcel.readException(Parcel.java:1573) 
     at android.app.ActivityManagerProxy.startActivityAsUser(ActivityManagerNative.java:2767) 
     at com.android.commands.am.Am.runStart(Am.java:885) 
     at com.android.commands.am.Am.onRun(Am.java:361) 
     at com.android.internal.os.BaseCommand.run(BaseCommand.java:47) 
     at com.android.commands.am.Am.main(Am.java:101) 
     at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method) 
     at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:251) 

所以我與具有缺少許可的用戶再次嘗試:

adb shell am start 
    -a android.intent.action.VIEW -c android.intent.category.DEFAULT 
    -t vnd.google.android.package/vnd.google.android.package_something 
    -n com.google.android.package/com.google.android.apps.package.SomeActivity 
    --user 10088 

但它說,該活動不存在exis t:

Starting: Intent { act=android.intent.action.VIEW cat= [android.intent.category.DEFAULT] typ=vnd.google.android.package/vnd.google.android.package_something cmp=com.google.android.package/com.google.android.apps.package.SomeActivity } 
Error type 3 
Error: Activity class {com.google.android.package/com.google.android.apps.package.SomeActivity} does not exist. 

我是否正確使用用戶參數?我是否需要包含更多信息?

回答

0

你應該使用下面的語法開始的活動:

adb shell am start 
-n com.google.android.package/.SomeActivity 

在你的情況與用戶權限:

adb shell am start 
-n com.google.android.package/.SomeActivity 
--user 10088