我一直在尝试使用Google Analytics(分析)库v2发送事件的多个实现,但没有人将数据发送到我的Google Analytics信息中心。
应该运行的最简单的实现是
EasyTracker.getTracker().sendEvent("Social", "Opened Share App", "Clicked", (long) 1);
EasyTracker.getInstance().dispatch();
活动和屏幕之类的其他内容跟踪得很好。
我也试过使用:
mGaInstance = GoogleAnalytics.getInstance(this);
mGaTracker = mGaInstance.getTracker("UA-XXXXXX-X");
然后使用该跟踪器发送事件,但这也不会发送数据。我还读到了需要超过24小时才能注册的活动。这真的很奇怪,因为分析中的其他内容基本上都是即时的,这是真的吗?我没有找到任何确认。
在analytics.xml中打开调试后,logcat
中会出现以下内容putHit called
Sending hit to store
PowerSaveMode terminated.
Thread[GAThread,5,main]: dispatch running...
User-Agent: GoogleAnalytics/2.0 (Linux; U; Android 4.1.1; nl-nl; HTC One X Build/JRO03C)
Host: ssl.google-analytics.com
GET /collect?ul=nl-nl&ev=1&ht=1370875183876&sr=720x1280&a=72697680&aid=com.package.android&ea=Opened+Share+App&cid=8e7dc0b4-d03c-4ccb-8bed-f549f16a1b1d&ec=Social&av=0.1.1&v=1&t=event&el=Clicked&an=My+App&tid=UA-XXXXXX-X&_u=.C&_v=ma1b5&cd=com.package.android.ActivityAbout&qt=39&z=103 HTTP/1.1
所以它似乎正好调度好了吗?
答案 0 :(得分:6)
正如我已经评论过的那样,我们让EasyTracker处理数据发送问题。这不是解决方法,而是一种解决方法。
我在res / values中创建了analytics.xml文件。我的analytics.xml文件是这样的:
<resources>
<!--Replace placeholder ID with your tracking ID-->
<string name="ga_trackingId">UA-********-*</string>
<!--Enable automatic activity tracking-->
<bool name="ga_autoActivityTracking">true</bool>
<!--Enable automatic exception tracking-->
<bool name="ga_reportUncaughtExceptions">true</bool>
<!-- dispatch period in seconds.
Default value is 30 minutes, should set about 5 minutes in release mode.
<bool name="ga_debug">true</bool>
<integer name="ga_dispatchPeriod">3</integer>
-->
<integer name="ga_dispatchPeriod">300</integer>
</resources>
ga_dispatchPeriod值以秒为单位。我们使用3秒进行调试,使用300秒进行发布模式。 ga_dispatchPeriod的默认值为30分钟。
答案 1 :(得分:3)
好的,所以答案非常愚蠢。我在23:45左右回到修复这个问题,但仍在努力寻找答案。然后时钟转了00:07我刷新了... Tadaa,前一天突然出现了73个事件......
所以,是的,如果其他人有同样的问题。我问题中的第一段代码就可以了。
EasyTracker.getTracker().sendEvent("Social", "Opened Share App", "Clicked", (long) 1);
EasyTracker.getInstance().dispatch();
实际上不需要调用调度方法,也不能帮助显示任何更早的内容。只需使用默认值,或者您可以阅读更多here。
答案 2 :(得分:0)
使用Google Analytics社交互动API
Tracker tracker = EasyTracker.getInstance(getActivity()
.getApplicationContext());
tracker.send(MapBuilder.createSocial("Twitter", "Tweet",
"https://developers.google.com/analytics").build());