Esto no es una respuesta per se, pero no puedo encontrar ninguna herramienta de comentarios aquí. Lo siento. Tengo este problema también. Me gustaría poder detectar nuevas instalaciones de aplicaciones. Sé que es posible; por ejemplo, la aplicación Apps to SD publica una notificación cuando instalas una nueva aplicación que, al hacer clic, abre un cuadro de diálogo para mover esa nueva aplicación a la tarjeta sd. Hasta ahora, todo lo que he podido averiguar es así: manifest.xml:
...
<receiver android:name=".IntentReceiver">
<intent-filter>
<action android:name="android.intent.action.PACKAGE_ADDED" />
<action android:name="android.intent.action.PACKAGE_REMOVED" />
<data android:scheme="package" />
</intent-filter>
</receiver>
...
IntentReciever.java:
public class IntentReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
context.startService(new Intent(context, YourService.class));
}
}
YourService continuación, se crea y llama onCreate() entonces onStartCommand(). Sin embargo, no he podido depurar esto ni mostrar con éxito ninguna notificación de la clase de servicio, por lo que no estoy del todo seguro de que esto funcione. He conseguido que esto funcione para otros Receptores como android.intent.action.BOOT_COMPLETED.
He añadido PACKAGE_REMOVED y la etiqueta . Una vez que esos estaban en mi manifiesto, mi aplicación informó correctamente cuando se instaló o eliminó cualquier aplicación. Por favor, consulte: http://groups.google.com/group/android-developers/browse_thread/thread/14589d5e0761c056 y http://developer.android.com/guide/appendix/faq/framework.html#7 – prodaea