2016-12-05 1 views
0

Dans mon application Android, je capture l'émission PACKAGE_ADDED:filtre pour intention PACKAGE_ADDED d'un paquet spécifique

<receiver android:name=".OnAppInstall"> 
    <intent-filter> 
     <action android:name="android.intent.action.PACKAGE_INSTALL" /> 
     <action android:name="android.intent.action.PACKAGE_ADDED" /> 
     <data android:scheme="package" /> 
    </intent-filter> 
</receiver> 

Mon application ne concerne que l'installation d'une application compagnon spécifique. La chaîne de données dans l'intention va: package:com.acme.myapp. La donnée d'intention Uri est une instance de OpaqueUri; getHost(), getPath() et getQuery() renvoient tous des valeurs nulles. Puis-je créer un filtre d'intention qui autorise uniquement les intentions pour un ID de package spécifique?

Répondre

0

Essayez les solutions suivantes. Ceci correspond à l'appel API correspondant here.

+0

Android 4.4+ uniquement. Toujours, mieux que rien. Au moins sur les versions antérieures, cela n'empêche pas le filtre de fonctionner. –

+0

Ran sur 5.0 émulateur, avec le sspPrefix le récepteur ne se déclenche pas, sans cela :( –

+0

Un filtre de données avec 'sspPattern' fonctionne sur 6.0. –