Permiso: INJECT_EVENTS para instrumentación a otras aplicaciones

Sé que este no es el primer tema de este permiso, sin embargo, los otros no están terminados o no me ayudan.

Lo que necesito es inflar KeyEvents usando Instrumentación. Eso funciona muy bien y es increíblemente más rápido que el método de shell ("input keyevent"). Pero si quiero inyectar a otras aplicaciones, detecto una SecurityException. Eso no me sorprendió mucho, así que agregué.<uses-permission android:name="android.permission.INJECT_EVENTS" /> a mi manifiesto. Eclipse deja de depurar y me dice que solo las aplicaciones del sistema pueden usar este permiso. Así que compilé usando la herramienta apk firmada y la puse en / system / app. Reiniciado, y adivina que

W/PackageManager( 3499): Not granting permission android.permission.INJECT_EVENTS to package com.<....> (protectionLevel=2 flags=0x8be45) 

La aplicación está dirigida a un solo dispositivo especial. Así que sé todas las especificaciones y está arraigado. Perosu Los comandos de inyección toman mucho tiempo y se requiere Superusuario. Me encantaría hacer eso con Instrumentación o tal vez hay algo más que debería probar.

El firmware no está escrito por mí, por lo que no tengo la clave de la plataforma.

¡Gracias por tu ayuda!

EDITAR: obtuve las claves de la plataforma (el desarrollador usó las de Google normales), firmó y alineó, luego presionó la apk a / system / app. También agregadoandroid:sharedUserId="android.uid.system" a mi manifiesto. En el arranque ya no hay el mensaje logcat. Sin embargo, cuando quiero enviar la sincronización de teclas sigo detectandoSecurityException. ¿Algunas ideas?

EDIT2: Aquí hay un extracto deps. Parece que el paquete no está listado como sistema

u0_a108   5241  2399  492044 48968 ffffffff 40113ab0 S com.mypackage

Respuestas a la pregunta(1)

Su respuesta a la pregunta