我在跟踪GA Android中的广告时遇到了一些麻烦。 如果您在启动应用时使用了一些广告系列数据,那么一切正常,您可以稍后在网站上看到广告系列。在日志中我有这样的东西:
> Hit delivery requested: ht=1487674823933, _s=16, _v=ma9.2.56, aid=com.TestCmp.TestApp,
> an=TestApp, av=1.14.1, cc=test_content, cid=5917df3e-cc15-4314-861e-0eaa3c742c75,
> ck=test_term, cm=test_medium, cn=test_name , cs=test_source, ni=1, sr=1080x1776, t=data,
> tid=XX-XXXXXXXX-X, ul=en-us, v=1
但是当您尝试使用Tracker.send()从代码手动跟踪广告系列时。一切都很好(日志),但我等了一天,我无法在现场看到我的活动。似乎没有任何事情发生,运动没有跟踪。这是来自android studio的日志:
> Hit delivery requested: ht=1487677206887, _s=6, _v=ma9.2.56, a=1570357627, aid=com.TestCmp.TestApp
> adid=444152c4-3228-444d-9a88-be47724bbe16, aip=0, an=TestApp, ate=1, av=1.14.1,
> cc=AndContent, cd=Sector, t=data, cid=2a130 fd4-438e-4db6-a8e1-38f064604efa, ck=AndTerm,
> cm=AndroidMedium, cn=SourceAndroid, cs=SourceAndroid, sf=100.0, sr=1080x1776, tid=XX-XXXXXXXX-X, ul=en-us, v=1
以下是我用于手动跟踪广告系列的代码。跟踪事件和屏幕工作正常。麻烦只有这种情况。
public static void ReportCampaign(String source, String campaign, String medium, String term, String content)
{
Map<String, String> paramsMap = new HashMap();
SetMapParam(paramsMap, "&cs", source);
SetMapParam(paramsMap, "&cn", campaign);
SetMapParam(paramsMap, "&cm", medium);
SetMapParam(paramsMap, "&ck",term);
SetMapParam(paramsMap, "&cc",content);
mTracker.send(new HitBuilders.ScreenViewBuilder()
.setAll(paramsMap)
.build());
}
public static void SetMapParam(Map map,String paramName, String paramValue)
{
if (paramName == null)
{
Log.w(LOG_TAG, "SetMapParam.set() called with a null paramName.");
return;
}
map.put(paramName, paramValue != null ? paramValue : "");
}
日志中没有错误或警告。 iOS工作正常 - 一切都跟踪,您可以在网站上看到这些数据,但Android广告系列无效。如果您有一些想法,为什么会发生这种情况,那将非常有用......