Denegación de permiso: esto requiere android.permission.INTERACT_ACROSS_USERS_FULL

Tengo un problema con sqlite db en Android. Pero al hacer una búsqueda rápida en Internet, sospecho que el problema no está relacionado con sqlite, sino con el usuario del sistema. Mi aplicación no está reconocida como usuario autorizado para acceder a las funcionalidades de db. Traté de aplicar posibles soluciones sugeridas en el desbordamiento de la stack, pero ninguna de ellas hizo la diferencia. Este es el LogCat al que me enfrento cada vez que bash utilizar la funcionalidad db.

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é agregar un permiso

 android.permission.INTERACT_ACROSS_USERS_FULL 

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

Supongo que no soy el único que intenta usar db en Android. Entonces hay una solución.

¿Cómo puedo realmente agregar el permiso INTERACT_ACROSS_USERS_FULL a mi aplicación?

    De acuerdo con 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.

    Lo cual no es algo que puedas lograr a menos que seas el creador o el desarrollador del sistema, o colabores con ellos de modo 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.

    Obtuve el error android.permission.INTERACT_ACROSS_USERS_FULL porque tuve algunos conflictos en el directorio bin del proyecto. Hice algunos cambios al ID del paquete de mi aplicación y app-file-1.apk en el directorio bin no coincide con el proyecto.

    Hice un proyecto> limpiar y verifiqué que la carpeta bin se haya borrado y regenerado , y funciona ahora.

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

    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 error.

    Intenta cambiar tu minSdkVersion en tu manifiesto. Pude repetir los resultados del locking y el error con las versiones 10, 11 y 12 (mi aplicación se bloquea y muestra “requiere android.permission.INTERACT_ACROSS_USERS_FULL” en el LogCat)

    Intenta deshabilitar el autocompletar. Funciona al 100% en Android Oreo. Ver este enlace

    Simplemente agrega este código a tu aplicación:

      if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { window.decorView.importantForAutofill = View.IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS; }