Android EasyTracker无法正常工作?

Mac*_*ski 5 android analytics tracking

我在Android上使用GoogleAnalytics EasyTracker时遇到问题.
我为这个问题设置的设置很简单:
- 新的Android项目
- 添加GA和ET库
- 添加GoogleAnalytics.xml:

<resources>
    <string name="ga_api_key">UA-2912-1</string>
    <bool name="ga_debug">true</bool>
    <bool name="ga_dryRun">true</bool>
    <bool name="ga_auto_activity_tracking">true</bool>
    <integer name="ga_dispatchPeriod">10</integer>
</resources>
Run Code Online (Sandbox Code Playgroud)

使用TrackedActivity而不是Activity扩展活动:

package test.testing.ez;

import android.os.Bundle;

import com.google.android.apps.analytics.easytracking.TrackedActivity;

public class TestEZActivity extends TrackedActivity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}
Run Code Online (Sandbox Code Playgroud)

最后,在模拟器或设备上运行我的简单应用程序后,在切换方向两次后,我的LogCat中会出现类似这样的内容.

02-11 14:39:27.245: I/GoogleAnalyticsTracker(219): Host: www.google-analytics.com
02-11 14:39:27.245: I/GoogleAnalyticsTracker(219): User-Agent: GoogleAnalytics/1.4.2 (Linux; U; Android 2.1-update1; en-us; sdk Build/ECLAIR)
02-11 14:39:27.245: I/GoogleAnalyticsTracker(219): GET /__utm.gif?utmwv=4.8.1ma&utmn=1604828210&utmt=event&utme=5(**)(0)&utmcs=UTF-8&utmsr=480x320&utmul=en-US&utmac=UA-2912-1&utmcc=__utma%3D1.659024508.1328970962.1328970962.1328971039.2%3B&utmht=1328971157185&utmqt=10064 HTTP/1.1

02-11 14:39:27.294: I/GoogleAnalyticsTracker(219): Host: www.google-analytics.com
02-11 14:39:27.294: I/GoogleAnalyticsTracker(219): User-Agent: GoogleAnalytics/1.4.2 (Linux; U; Android 2.1-update1; en-us; sdk Build/ECLAIR)
02-11 14:39:27.294: I/GoogleAnalyticsTracker(219): GET /__utm.gif?utmwv=4.8.1ma&utmn=1061578751&utmt=event&utme=5(**)(0)&utmcs=UTF-8&utmsr=480x320&utmul=en-US&utmac=UA-2912-1&utmcc=__utma%3D1.659024508.1328970962.1328970962.1328971039.2%3B&utmht=1328971161689&utmqt=5611 HTTP/1.1

02-11 14:39:27.314: I/GoogleAnalyticsTracker(219): Host: www.google-analytics.com
02-11 14:39:27.314: I/GoogleAnalyticsTracker(219): User-Agent: GoogleAnalytics/1.4.2 (Linux; U; Android 2.1-update1; en-us; sdk Build/ECLAIR)
02-11 14:39:27.314: I/GoogleAnalyticsTracker(219): GET /__utm.gif?utmwv=4.8.1ma&utmn=1061578751&utmt=event&utme=5(**)(0)&utmcs=UTF-8&utmsr=480x320&utmul=en-US&utmac=UA-2912-1&utmcc=__utma%3D1.659024508.1328970962.1328970962.1328971039.2%3B&utmht=1328971161689&utmqt=5623 HTTP/1.1

02-11 14:39:27.324: I/GoogleAnalyticsTracker(219): Host: www.google-analytics.com
02-11 14:39:27.324: I/GoogleAnalyticsTracker(219): User-Agent: GoogleAnalytics/1.4.2 (Linux; U; Android 2.1-update1; en-us; sdk Build/ECLAIR)
02-11 14:39:27.324: I/GoogleAnalyticsTracker(219): GET /__utm.gif?utmwv=4.8.1ma&utmn=1210083032&utmcs=UTF-8&utmsr=480x320&utmul=en-US&utmp=%2Ftest.testing.ez.TestEZActivity&utmac=UA-2912-1&utmcc=__utma%3D1.659024508.1328970962.1328970962.1328971039.2%3B&utmht=1328971161800&utmqt=5524 HTTP/1.1
Run Code Online (Sandbox Code Playgroud)

前三个是空事件(utme = 5(**)(0)),最后一个是pageView(utmp =%2Ftest.testing.ez.TestEZActivity).
正确的做法应该是空的情况下,网页浏览,emptyEvent,浏览量(从onStop,onStart,onStoponStart).在一次调度期间
跟踪多个事件(带EasyTracker.getTracker().trackEvent)时,这也是错误的.
有人有过类似的问题吗?

Mac*_*ski 1

事实证明,这是 libGoogleAnalytics.jar 1.4.2 中的一个错误,调用了 for 循环中的In
函数,该函数会从命中列表中删除元素。 这种情况主要发生在干模式下,但有时也会发生在正常模式下(当命中字符串长度大于 8k 时),但如果发生这种情况,您会收到警告: AsyncDispatchTask.dispatchSomePendingHitsNetworkDispatcher.DispatcherThreadrequesterCallBacks.requestSent()

Log.w("GoogleAnalyticsTracker", "Hit too long (> 8192 bytes)--not sent");
Run Code Online (Sandbox Code Playgroud)

因此,请确保您的事件和页面浏览量不要太长。