2 votos

"Ni el usuario 2000 ni el proceso actual tienen Android.permission.GRANT_RUNTIME_PERMISSIONS" cuando se utiliza el comando `adb shell pm grant`.

He instalado un gestor de portapapeles, Pila de clips en mi teléfono Android 11. Cuando se abre la aplicación, el desarrollador útilmente da el mensaje de que el acceso al portapapeles de fondo ha sido bloqueado por Android 10, pero que ha encontrado una solución y para ejecutar los siguientes comandos ADB:

adb -d shell appops set com.catchingnow.tinyclipboardmanager SYSTEM_ALERT_WINDOW allow; 
adb -d shell pm grant com.catchingnow.tinyclipboardmanager android.permission.READ_LOGS; 
adb shell am force-stop com.catchingnow.tinyclipboardmanager;

No quiero instalar Android Studio. He intentado lo siguiente:

  1. He activado las opciones de desarrollador en mi teléfono y he activado la depuración USB y Permitir superposiciones de pantalla en la configuración.
  2. En mi ordenador instalado minimal_adb_fastboot_v1.4.3
  3. Conectado mi teléfono a mi ordenador vía usb
  4. Haga clic en el acceso directo del escritorio para Minimal ADB y Fastboot para abrir una ventana cmd
  5. Ran adb -d shell appops set com.catchingnow.tinyclipboardmanager SYSTEM_ALERT_WINDOW allow; El demonio se puso en marcha.
  6. Ran adb -d shell pm grant com.catchingnow.tinyclipboardmanager android.permission.READ_LOGS; Dio error:

    Exception occurred while executing 'grant': java.lang.SecurityException: grantRuntimePermission: Neither user 2000 nor current process has android.permission.GRANT_RUNTIME_PERMISSIONS. at android.app.ContextImpl.enforce(ContextImpl.java:2028) at android.app.ContextImpl.enforceCallingOrSelfPermission(ContextImpl.java:2056) at com.android.server.pm.permission.PermissionManagerService.grantRuntimePermissionInternal(PermissionManagerService.java:1463) at com.android.server.pm.permission.PermissionManagerService.grantRuntimePermission(PermissionManagerService.java:1444) at com.android.server.pm.PackageManagerShellCommand.runGrantRevokePermission(PackageManagerShellCommand.java:2300) at com.android.server.pm.PackageManagerShellCommand.onCommand(PackageManagerShellCommand.java:251) at android.os.BasicShellCommandHandler.exec(BasicShellCommandHandler.java:98) at android.os.ShellCommand.exec(ShellCommand.java:44) at com.android.server.pm.PackageManagerService.onShellCommand(PackageManagerService.java:22307) at android.os.Binder.shellCommand(Binder.java:929) at android.os.Binder.onTransact(Binder.java:813) at android.content.pm.IPackageManager$Stub.onTransact(IPackageManager.java:4687) at com.android.server.pm.PackageManagerService.onTransact(PackageManagerService.java:4471) at android.os.Binder.execTransactInternal(Binder.java:1159) at android.os.Binder.execTransact(Binder.java:1123)

¿Cómo puedo proceder?

1voto

U. Windl Puntos 105

Para Oppos Color OS 12.1 (Android 12) esto funcionó para mí:

I desactivado la opción (lo siento: es alemán): " Comprueba las aplicaciones instaladas a través de USB " (probablemente "Comprobar aplicaciones instaladas a través de USB"):

Developer Setting in Oppo's Color OS 12.2

A continuación, el comando adb shell pm grant com.dp.logcatapp android.permission.READ_LOGS tuvo éxito. Antes de conseguirlo:

java.lang.SecurityException: grantRuntimePermission: Ni el usuario 2000 ni el proceso actual tienen Android.permission.GRANT_RUNTIME_PERMISSIONS.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X