La méthode la plus simple consiste à utiliser adb
. Vous n'avez pas à écrire de code.
Juste exécuté dans un terminal :
adb shell
am broadcast -a com.android.vending.INSTALL_REFERRER -n <your.package>/.<path.up.until.your.BroadcastReceiver> --es "referrer" "utm_source=test_source\&utm_medium=test_medium\&utm_term=test_term\&utm_content=test_content\&utm_campaign=test_name"
Voici ma réplique exacte :
am broadcast -a com.android.vending.INSTALL_REFERRER -n net.lp.collectionista/.util.broadcast_receivers.FacadeBroadcastReceiver --es "referrer" "utm_source=test_source\&utm_medium=test_medium\&utm_term=test_term\&utm_content=test_content\&utm_campaign=test_name"
Mais votre BroadcastReceiver
peut avoir besoin d'être le AnalyticsReceiver
c'est-à-dire
Pour Google Analytics v2 :
com.your.package/com.google.analytics.tracking.Android.CampaignTrackingReceiver
Pour Google Analytics v3 :
com.your.package/com.google.Android.apps.analytics.AnalyticsReceiver
Pour Google Analytics v4 :
com.your.package/com.google.Android.gms.analytics.CampaignTrackingReceiver
Comme Luigi l'a dit, vous pouvez aussi laisser de côté les éléments suivants "-n"
mais alors toutes les applications de votre appareil recevront la recommandation. Cela peut être un bon test supplémentaire pour voir si votre BroadcastReceiver
peut être trouvé correctement.
La sortie que je vois (surtout la dernière ligne est importante) :
05-13 17:28:08.335: D/Collectionista FacadeBroadcastReceiver(8525): Receiver called
05-13 17:28:08.335: V/Collectionista FacadeBroadcastReceiver(8525): Receiver called with action: com.android.vending.INSTALL_REFERRER
05-13 17:28:08.365: D/GoogleAnalyticsTracker(8525): Stored referrer:utmcsr=test_source|utmccn=test_name|utmcmd=test_medium|utmctr=test_term|utmcct=test_content