Denegación de permiso: esto requiere Android.permiso.INTERACTUAR ENTRE USUARIOS COMPLETO


Tengo un problema con sqlite db en Android. Pero como hice una investigación rápida en Internet, sospecho que el problema no está relacionado con sqlite sino con el usuario del sistema. Mi aplicación no se reconoce como usuario autorizado para acceder a las funcionalidades de la base de datos. Traté de aplicar posibles soluciones sugeridas en stack overflow, pero ninguna de ellas marcó la diferencia. Este es el LogCat al que me enfrento cada vez que intento usar la funcionalidad de la base de datos.

12-14 02:35:17.721    2953-3355/? E/DatabaseUtils﹕ Writing exception to parcel
java.lang.SecurityException: Permission Denial: get/set setting for user asks to run as user -2 but is calling from user 0; this requires android.permission.INTERACT_ACROSS_USERS_FULL
at com.android.server.am.ActivityManagerService.handleIncomingUser(ActivityManagerService.java:13082)
at android.app.ActivityManager.handleIncomingUser(ActivityManager.java:2038)
at com.android.providers.settings.SettingsProvider.callFromPackage(SettingsProvider.java:577)
at android.content.ContentProvider$Transport.call(ContentProvider.java:279)
at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:273)
at android.os.Binder.execTransact(Binder.java:388)
at dalvik.system.NativeStart.run(Native Method)

Intenté añadir permiso

android.permission.INTERACT_ACROSS_USERS_FULL

Pero aún no hay sonido. Lo extraño es que cuando intento agregar permiso de INTERNET Android Studio 0.3 (ide que uso) me sugiere posibles permisos que puedo elegir. Pero cuando se trata de INTERACT_ACROSS_USERS_FULL permission se comporta como si no tuviera idea acerca de este permiso. Mi dispositivo de prueba es Samsung S4 que se ejecuta en 4.3.

Asumo que no soy el único que intenta usar db en Android. Así que hay una solución.

¿Cómo puedo realmente agregar permiso INTERACT_ACROSS_USERS_FULL a mi ¿solicitud?

Author: gurkan, 2013-12-14

5 answers

Según esta respuesta: android.permission.INTERACT_ACROSS_USERS_FULL es un permiso de nivel de firma. Su aplicación no podrá usarla hasta que tenga la misma firma que el sistema.

Que no es algo que puedas lograr a menos que seas el creador o la compilación del sistema, o colabores con ellos de manera que estén dispuestos a firmar tu apk con su certificado. En otras palabras, esto está fuera de los límites para la mayoría de los desarrolladores.

 19
Author: SamSPICA,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 12:17:42

Tengo el error android.permiso.INTERACT_ACROSS_USERS_FULL porque tuve algunos conflictos en el directorio bin del proyecto. Hice algunos cambios en el id de paquete de mi aplicación y el archivo de aplicación-1.apk en el directorio bin no coincide con el proyecto.

Hice un proyecto > limpiar y comprobé que la carpeta bin estaba limpia y regenerada, y ahora funciona.

 4
Author: Pelanes,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-09-03 07:18:52

Tuve el mismo problema y creo que puedo ayudarte. Había registrado mi aplicación con mi almacén de claves de producción, pero estaba usando Eclipse debug para cargarla en mi teléfono. El Eclipse debug usa debug.keystore que no coincidirá con la firma de su clave de producción y lanzará este error. Usa el almacén de claves de depuración para probar o envíate el apk a ti mismo y descárgalo en tu teléfono.

 0
Author: HarshMarshmallow,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-03-31 15:07:21

Recibo este error cuando cambio mi minSdkVersion de 8 a 11 en mi Manifiesto. Lo cambié de nuevo a 8 o 9 y no más errores.

Intenta cambiar tu minSdkVersion en tu manifiesto. Pude repetir los resultados de bloqueo y error con las versiones 10, 11 y 12 (mi aplicación se bloquea y se muestra "requiere Android.permiso.INTERACT_ACROSS_USERS_FULL " en el LogCat)

 0
Author: user3542309,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-04-16 17:47:38

Intente desactivar el relleno automático. Funciona 100% en Android Oreo. Compruebe este enlace

Simplemente agregue este código a su aplicación :

      if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
        window.decorView.importantForAutofill = 
        View.IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS;
    }
 0
Author: user7856586,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-03-30 11:53:02