Android 开发:Google Analytics Tracker 不工作

Android development: Google Analytics Tracker doesn't work

我还在 SO 上检查了其他答案,但我的 Google Analytics Tracker 无法正常工作。

我按照 Google 文档进行了全部设置:https://developers.google.com/analytics/devguides/collection/android/v4/advanced

我创建了一个名为 gA.java 的 Class 和一个名为 MainActivity.java 的主要 class。这是我的 gA class:

import com.google.android.gms.analytics.GoogleAnalytics;
import com.google.android.gms.analytics.Tracker;

import java.util.HashMap;


public class gA extends MainActivity {
    private static final String PROPERTY_ID = "UA-xxx-5";
    public enum TrackerName {
        APP_TRACKER, // Tracker used only in this app.
        GLOBAL_TRACKER, // Tracker used by all the apps from a company. eg: roll-up tracking.
        ECOMMERCE_TRACKER, // Tracker used by all ecommerce transactions from a company.
    }

    HashMap<TrackerName, Tracker> mTrackers = new HashMap<TrackerName, Tracker>();

    public gA() {
        super();
    }
    synchronized Tracker getTracker(TrackerName trackerId) {
        if (!mTrackers.containsKey(trackerId)) {

            GoogleAnalytics analytics = GoogleAnalytics.getInstance(this);
            Tracker t = (trackerId == TrackerName.APP_TRACKER) ? analytics.newTracker(PROPERTY_ID)
                    : (trackerId == TrackerName.GLOBAL_TRACKER) ? analytics.newTracker(R.xml.global_tracker)
                    : analytics.newTracker(R.xml.global_tracker);
            mTrackers.put(trackerId, t);

        }
        return mTrackers.get(trackerId);
    }
}

这是我的主要 class MainActivity 中 onCreate 方法的一部分,您还可以在其中看到错误:

Click here

在 SO 的其他答案中,他们建议删除 getApplication,但它仍然不起作用。

还有一些建议,例如将 android:name 添加到我在 <application 中的清单中,但这也显示了一个错误:

http://postimg.org/image/5da53ocyz/

我认为问题出在你的 gA class 扩展了 MainActivity 而它应该扩展 Application class。使用您自己的应用程序 class 将帮助您获得跟踪器的单个实例,并将解决您的类型不匹配问题。

希望对您有所帮助。