Android开发:Google Analytics跟踪器无法运行

时间:2015-05-20 02:17:32

标签: java android google-analytics

我还在SO上查看了其他答案,但我无法使用Google Analytics跟踪器。

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

我创建了一个名为gA.java的类,并且有一个名为MainActivity.java的主类。这是我的gA课程:

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);
    }
}

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

Click here

在SO的其他答案中,他们建议删除getApplication,但它仍然无法正常工作。

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

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

1 个答案:

答案 0 :(得分:0)

我认为问题来自于这样一个事实:当你的gA类扩展MainActivity类时,它会扩展Application。使用您自己的应用程序类将帮助您实现跟踪器的单个实例,并解决您的类型不匹配问题。

希望这有帮助。