我是否每次需要跟踪器时都必须调用EasyTracker.getInstance(this);还是只能在onCreate()中初始化,然后再将其存储为这样的私有字段?

public class AndroidStarter extends Activity
{
    private EasyTracker easyTracker;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        easyTracker = EasyTracker.getInstance(this);
    }

    @Override
    public void onStart() {
        super.onStart();
        easyTracker.activityStart(this);
    }

    @Override
    public void onStop() {
        super.onStop();
        easyTracker.activityStop(this);
    }
}

最佳答案

您可以采用任何一种方式来做。

这种方式的优点是您不必调用getInstance()。这可能会非常非常非常快。

每次调用getInstance()的好处是,如果由于您处于同一活动一段时间而使Tracker暂时不使用,则Tracker可能会收集垃圾以释放内存。

10-04 13:10