本文档将介绍如何使用 Android 版 Google Analytics(分析)SDK v3 管理将数据调度到 Google Analytics(分析)的工作。
概览
使用 Android 版 Google Analytics(分析)SDK 收集的数据会先存储在本地,然后才会在单独的线程中调度到 Google Analytics(分析)。
数据必须在各数据视图本地时区的次日凌晨 4 点之前进行调度和接收。送达时间晚于此时限的数据将不会出现在报告中。例如,如果某次匹配在本地时间晚上 11:59 加入队列,则必须在 4 个小时内(凌晨 3:59 之前)调度到 Google Analytics(分析),否则该匹配无法出现在报告中。另一方面,如果某次命中在凌晨 00:00 加入队列,则需要在 28 小时内(即数据才会显示在报告中的凌晨 3:59。
定期调度
默认情况下,Android 版 Google Analytics(分析)SDK 会每隔 30 分钟调度一次数据。
要以程序化方式设置调度周期,请使用以下代码:
// Set the dispatch period in seconds. GAServiceManager.getInstance().setLocalDispatchPeriod(15);
要使用 EasyTracker 以 XML 格式设置调度时间段:
<integer name="ga_dispatchPeriod">30</integer>
将此值设为负数会停用定期调度,在这种情况下,如果您希望向 Google Analytics(分析)发送数据,则需要使用手动调度。
// Disable periodic dispatch by setting dispatch period to a value less than 1. GoogleAnalytics.getInstance(this).setDispatchPeriod(0);
如果用户的网络连接断开,或是用户在匹配数据尚待调度时就退出了您的应用,那么您的匹配数据会继续存储在本地。这些数据会在您的应用下次运行并发出调度请求时进行调度。
手动调度
要手动调度匹配数据(比如当您知道应用正在使用设备的网络连接调度其他数据时),请使用:
GAServiceManager.getInstance().dispatchLocalHits();