我想模仿google play com.android.vending.INSTALL_REFERRER广播。
我的应用程序安装另一个应用程序,安装完成后我想发送广播INSTALL_REFERRER,如google play,因此安装的应用程序会将广告系列数据发送到谷歌分析。
我按照所有谷歌分析教程, 并查看了这个实现:https://github.com/giago/referraltester
从ADB shell发送广播时,一切正常,分析接收器接收数据并将其发送给Google分析,从应用程序发送它似乎无法正常工作。
这是我从我的应用程序广播INSTALL_REFERRER时得到的结果:
主题[GAThread,5,main]:未找到广告系列数据。
发送广播的应用:
Intent i = new Intent("com.android.vending.INSTALL_REFERRER");
i.setPackage("com.dev.refferer2");
i.putExtra("referrer",
"utm_source=apps&utm_medium=apps&utm_term=apps&utm_content=apps&utm_campaign=apps");
sendBroadcast(i);
接收广播的应用: Manifest.xml:
<service android:name="com.google.android.gms.analytics.CampaignTrackingService" />
<receiver android:name="com.google.android.gms.analytics.CampaignTrackingReceiver"
android:exported="true">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
应用:
synchronized Tracker getTracker(TrackerName trackerId) {
if (!mTrackers.containsKey(trackerId)) {
GoogleAnalytics analytics = GoogleAnalytics.getInstance(this);
Tracker t = (trackerId == TrackerName.APP_TRACKER) ? analytics.newTracker(R.xml.global_tracker)
: (trackerId == TrackerName.GLOBAL_TRACKER) ? analytics.newTracker(R.xml.global_tracker)
: analytics.newTracker(R.xml.global_tracker);
mTrackers.put(trackerId, t);
}
return mTrackers.get(trackerId);
}
MyActivity:
Tracker t = ((App) getApplication()).getTracker(App.TrackerName.APP_TRACKER);
t.setScreenName("MyActivity");
t.send(new HitBuilders.AppViewBuilder().build());
请帮我解决这个问题。 是甚至可能还是我在这里浪费时间?
谢谢! :)