Google Analytics(分析),从资源/编程的角度来看,使用(实施)它的最佳方式是什么?

时间:2011-06-14 16:25:54

标签: android google-analytics

我正在尝试在我的应用中使用此功能(Google Analytics),但无法弄清楚最佳方法是什么。

首先,我开始在应用程序的每个Activity中实现它。

public class MyActivity extends Activity {

    public static GoogleAnalyticsTracker tracker;   

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        tracker = GoogleAnalyticsTracker.getInstance();
        tracker.start("UA-YOUR-ACCOUNT-HERE", this);

        tracker.trackPageView("/myActivityView");
    }

    @Override
    public void onDestroy() {
        // Stop the tracker when it is no longer needed.
        tracker.stop();
        super.onDestroy();
    }
}

但是现在我认为最好只在Application类中创建一个跟踪器并从每个Activity引用它,而不是在我创建的每个Activity中重复此代码。

任何人都可以解释哪种方式更好,为什么?

感谢。

2 个答案:

答案 0 :(得分:3)

这:Google Analytics in Android app - dealing with multiple activities

对于提出在Android应用中使用Google Analytics的策略是一个很好的阅读。

实质上,您不应该为每个活动调用start()/ stop()因为start()会导致记录新的访问,这不是大多数人想要或期望的。但是,如果这是您想要的行为,您可以自由地这样做。

正如Lukas所说使用单例或正如您所说的使用Application上下文调用start()/ stop()会让您获得更准确的跟踪,但是在调用您需要注意的stop()时会有一些警告。上面的链接更详细。

答案 1 :(得分:0)

为什么不为跟踪器功能创建一个类并创建一个singleton

然后,该课程可以保存您需要的所有功能(例如跟踪页面视图),并为您完成所有后台工作。