Самый простой способ - использовать adb
. Вам не нужно писать код.
Просто запустите в терминале :
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"
Вот моя точная строка:
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"
Но вам BroadcastReceiver
может понадобиться быть AnalyticsReceiver
, т.е.
Для Google Analytics v2:
com.your.package / com.google.analytics.tracking.android.CampaignTrackingReceiver
Для Google Analytics v3:
com.your.package / com.google.android.apps.analytics.AnalyticsReceiver
Для Google Analytics v4:
com.your.package / com.google.android.gms.analytics.CampaignTrackingReceiver
Как сказал Луиджи, вы также можете "-n"
опустить часть имени компонента, но тогда каждое приложение на вашем устройстве получит ссылку. Это может быть хорошим дополнительным тестом, чтобы убедиться, что вас BroadcastReceiver
правильно найдут.
Результат, который я вижу (особенно важна последняя строка):
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