Intención de permiso personalizado no funciona

ACTUALIZAR

Mi problema inmediato se resuelve según mi respuesta a continuación. Mi entorno (PC + dispositivos) no permite permisos personalizados en las compilaciones DEBUG.

Estoy convencido de que pude ejecutar las compilaciones DEBUG bien hace unas semanas, de ahí la descripción de un error "intermitente".

ACTUALIZACIÓN 2

El código sincronizado en la máquina de un desarrollador diferente, funciona bien en su dispositivo en modo DEBUG a través de Eclipse. En mis dispositivos, no funciona desde su máquina.

También la compilación DEBUG de mi máquina funciona bien en este otro dispositivo.

¿Esto me lleva a preguntarme si algo salió mal en mis dispositivos?

Tengo un intermitente"Denegación de permiso" problema con el permiso personalizadoIntents. Es uno de esos donde el código está en producción y funciona, pero a veces, al crear nuevas versiones, deja de funcionar. Solo he logrado arreglarlo por suerte antes, a través de un proceso de reinicio (dispositivo y PC), proyecto limpio, desinstalación / reinstalación, repetición, etc. Esto no es aceptable.

Por lo que puedo ver, estoy haciendo todo lo correcto para los permisos personalizados en miIntents que estoy transmitiendo dentro de mi aplicación. Pero Logcat me está dando los errores habituales de:

W / BroadcastQueue (389): Denegación de permiso: Intención de transmisión {act = A_ACTION flg = 0x10} de com.test (pid = 22030, uid = 10002) requiere A_PERMISSION por el receptor registrado BroadcastFilter {43918d50 u0 ReceiverList {4391cad8 22030 com.test / 10002 / u0 remoto: 430576d0}}

en 4.2.1 (Galaxy Nexus) y 4.2.2 (Nexus 7), o

W / ActivityManager (2002): Denegación de permiso: recibir Intención {act = A_ACTION flg = 0x10} a ProcessRecord {41a12748 31496: com.test / 10115} (pid = 31496, uid = 10115) requiere A_PERMISSION debido al remitente com.test ( uid 10115)

en 4.0 (S2) y 2.3.3 (Samsung Ace).

es decir, errores estándar.

Mi MANIFIESTO dice:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.test"
    android:versionCode="1"
    android:versionName="4.10.0.3" >

    <permission
        android:name="A_PERMISSION"
        android:description="@string/broadcast_permission_desc"
        android:label="@string/broadcast_permission_label"
        android:permissionGroup="@string/broadcast_permission_group"
        android:protectionLevel="signature" />

    <uses-permission android:name="A_PERMISSION" />

    etc.....

Esos STRINGS se definen como (fwiw):

<string name="broadcast_permission_label">Private Broadcast</string>
<string name="broadcast_permission_desc">This permission allows the necessary components of the application to receive private broadcasts that are sent within the application.</string>
<string name="broadcast_permission_name">A_PERMISSION</string>
<string name="broadcast_permission_group">A_GROUP</string>

Tengo un método en mi subclase APLICACIÓN base que utilizo para hacer la transmisión:

public void sendBroadcast(Intent i)
{
    // hardcoded custom permission
    super.sendBroadcast(i, "A_PERMISSION");
}

Me registro para miBroadcastReceiver desde dentro de unFragment Me gusta esto:

public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);

    // hardcoded custom permission
    MyApp.getInstance().registerReceiver(myReceiver, myFilter,
        "A_PERMISSION", null);
}

He comprobado las siguientes preguntas relacionadas sin alegría:

Denegación de permiso de Android: intención de transmisión¿Cómo usar permisos personalizados en Android?Cómo declarar los permisos definidos por el usuario en Android

Creo que cubre preguntas similares en este sitio.

Mi problema es que es intermitente pero desperdicia mucho tiempo, es decir, algunas compilaciones funcionan en todos los teléfonos, algunas compilaciones fallan en todos los teléfonos.

Me pregunto si esto es un problema en uno de los marcos (ya sea el sistema operativo Android o quizás el SDK de Eclipse / Android). Desafortunadamente mi búsqueda en Google solo me lleva a los problemas más comunes con las soluciones comunes.

Respuestas a la pregunta(1)

Su respuesta a la pregunta