ADB Shell无权访问

use*_*789 19 android adb

我正在尝试将 apk 安装到工作配置文件用户

adb shell pm install --user 12 /data/test.apk
Run Code Online (Sandbox Code Playgroud)

adb 返回错误。

C:\Users\tesrter\Downloads>adb shell pm install --user 12 /data/test.apk
Security exception: Shell does not have permission to access user 12
 com.android.server.am.ActivityManagerService.handleIncomingUser:14895 android.app.ActivityManager.handleIncomingUser:3834 com.android.server.pm.PackageManagerShellCommand.translateUserId:2756

java.lang.SecurityException: Shell does not have permission to access user 12
 com.android.server.am.ActivityManagerService.handleIncomingUser:14895 android.app.ActivityManager.handleIncomingUser:3834 com.android.server.pm.PackageManagerShellCommand.translateUserId:2756
        at com.android.server.am.UserController.handleIncomingUser(UserController.java:1883)
        at com.android.server.am.ActivityManagerService.handleIncomingUser(ActivityManagerService.java:14895)
        at android.app.ActivityManager.handleIncomingUser(ActivityManager.java:3834)
        at com.android.server.pm.PackageManagerShellCommand.translateUserId(PackageManagerShellCommand.java:2756)
        at com.android.server.pm.PackageManagerShellCommand.doCreateSession(PackageManagerShellCommand.java:2762)
        at com.android.server.pm.PackageManagerShellCommand.runInstall(PackageManagerShellCommand.java:1072)
        at com.android.server.pm.PackageManagerShellCommand.onCommand(PackageManagerShellCommand.java:175)
        at android.os.ShellCommand.exec(ShellCommand.java:104)
        at com.android.server.pm.PackageManagerService.onShellCommand(PackageManagerService.java:24259)
        at android.os.Binder.shellCommand(Binder.java:888)
        at android.os.Binder.onTransact(Binder.java:772)
        at android.content.pm.IPackageManager$Stub.onTransact(IPackageManager.java:4879)
        at com.android.server.pm.PackageManagerService.onTransact(PackageManagerService.java:4661)
        at com.android.server.pm.HwPackageManagerService.onTransact(HwPackageManagerService.java:534)
        at android.os.Binder.execTransactInternal(Binder.java:1028)
        at android.os.Binder.execTransact(Binder.java:1001)
Run Code Online (Sandbox Code Playgroud)

小智 8

我遇到过同样的问题。我发现我可以通过以主用户身份运行来解决:

pm list packages --user 0
Run Code Online (Sandbox Code Playgroud)

这能够向我显示我可以删除的所有已安装的应用程序。