La forma más sencilla es utilizar adb
. No tienes que escribir ningún código.
Simplemente ejecute en una 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"
Aquí está mi línea exacta:
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"
Pero es BroadcastReceiver
posible que deba ser el AnalyticsReceiver
, es decir
Para Google Analytics v2:
com.your.package / com.google.analytics.tracking.android.CampaignTrackingReceiver
Para Google Analytics v3:
com.your.package / com.google.android.apps.analytics.AnalyticsReceiver
Para Google Analytics v4:
com.your.package / com.google.android.gms.analytics.CampaignTrackingReceiver
Como dijo Luigi, también puede omitir la "-n"
parte del nombre del componente, pero luego todas las aplicaciones de su dispositivo recibirán la referencia. Esta puede ser una buena prueba adicional para ver si BroadcastReceiver
se puede encontrar correctamente.
La salida que veo (especialmente la última línea es 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