如何使用Cordova实施广告系列跟踪?

时间:2015-07-29 08:13:35

标签: cordova google-analytics cordova-plugins

我正在尝试在我的cordova应用中实施广告系列跟踪,但我没有取得成功。

我之前使用的是danwilson插件,虽然效果不错,但它并不支持广告系列,就像我在这里看到的那样:

https://github.com/danwilson/google-analytics-plugin/issues/68

所以我将我的插件更改为此fork:

https://github.com/Anu2g/google-analytics-plugin

其中有广告系列跟踪。

我目前正在Android测试,我已将此添加到我的清单

    <!-- Used for Google Play Store Campaign Measurement-->
<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>

所示

https://developers.google.com/analytics/devguides/collection/android/v4/campaigns

我在UniversalAnalyticsPlugin.java中有广告系列功能

private void trackView(String screenname, String deepLinkUrl, CallbackContext callbackContext) {
    if (! trackerStarted ) {
        callbackContext.error("Tracker not started");
        return;
    }

    addCustomDimensionsToTracker(tracker);

    if (null != screenname && screenname.length() > 0) {
        tracker.setScreenName(screenname);
        tracker.send(new HitBuilders
                .ScreenViewBuilder()
                .setCampaignParamsFromUrl(deepLinkUrl)
                .build()
                );
        callbackContext.success("Track Screen: " + screenname);
    } else {
        callbackContext.error("Expected one non-empty string argument.");
    }
}

我尝试使用Google指南进行测试:

https://developers.google.com/analytics/solutions/testing-play-campaigns

我发布

adb shell am broadcast -a com.android.vending.INSTALL_REFERRER -n com.my.app/com.google.android.gms.analytics.CampaignTrackingReceiver --es "referrer" "utm_source%3DtestSource%26utm_medium%3DtestMedium%26utm_term%3DtestTerm%26utm_content%3DtestContent%26utm_campaign%3DtestCampaign"

在我的cmd中,它返回

    Broadcasting: Intent { act=com.android.vending.INSTALL_REFERRER cmp=com.my.app/com.google.android.gms.analytics.CampaignTrackingReceiver (has extras) }
Broadcast completed: result=0

哪个看起来很好用。然后我打开我的logcat,打开已编译的应用程序,然后记录Thread[GAThread,5,main]: No campaign data found.

正如我在插件文档中看到的那样,我必须这样做:

To track a Screen (PageView) w/ campaign detilas:

window.analytics.trackView('Screen Title', 'my-scheme://content/1111?utm_source=google&utm_campaign=my-campaign')

但是我不明白如何使用params获得真实的URL,而不是硬编码的。

在Cordova成功实施广告系列跟踪的人可以启发我吗?

提前致谢

1 个答案:

答案 0 :(得分:3)

经过一些研究,以及作者对插件的一些更改,答案可能更明显:

在插件的最后一个版本中:https://github.com/danwilson/google-analytics-plugin作者为广告系列添加了未记录的功能,并且无需任何修改即可运行。它会在清单中添加标记,并在将广告系列链接发布到Google Play时起作用。

有一点:没有找到任何广告系列数据,但它有效,即使回复不是Google所说的

祝你好运