A maneira mais fácil é usando adb
. Você não precisa escrever nenhum código.
Basta executar em um 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"
Aqui está minha linha exata:
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"
Mas você BroadcastReceiver
pode precisar ser o AnalyticsReceiver
, ou seja,
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 Luigi disse, você também pode omitir a "-n"
parte do nome do componente, mas todos os aplicativos do seu dispositivo receberão a referência. Este pode ser um bom teste extra para ver se o seu BroadcastReceiver
pode ser encontrado corretamente.
A saída que vejo (especialmente a última linha é 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