我正在使用 EasyTracker 谷歌分析库,我的应用程序有多个 Activity 。 我想在每次应用启动时跟踪事件设备型号和系统版本信息。
我的启动器 Activity 的 onCreate 方法中的这段代码
EasyTracker.getTracker().trackEvent("Others", "App launch", "The os version", 0);
崩溃
06-15 21:24:30.898: WARN/dalvikvm(1203): threadid=8: thread exiting with uncaught exception (group=0x4001d800)
06-15 21:24:30.898: ERROR/AndroidRuntime(1203): FATAL EXCEPTION: TrackerThread
java.lang.NullPointerException
at com.google.android.apps.analytics.GoogleAnalyticsTracker.createEvent(Unknown Source)
at com.google.android.apps.analytics.GoogleAnalyticsTracker.trackEvent(Unknown Source)
at com.google.android.apps.analytics.easytracking.GoogleAnalyticsTrackerDelegateImpl.trackEvent(Unknown Source)
at com.google.android.apps.analytics.easytracking.EasyTracker$11.run(Unknown Source)
at com.google.android.apps.analytics.easytracking.EasyTracker$TrackerThread.run(Unknown Source)
06-15 21:24:30.918: WARN/ActivityManager(58): Force finishing activity com.mycompany.myapp/com.mycompany.activity.HomeActivity
我做错了什么?
最佳答案
您会得到一个 NullPointerException,因为跟踪器是在基类 TrackedActivity 的 onStart 方法中初始化的,它发生在 onCreate 之后。 但是,TrackedActivity 会自动跟踪 Activity (trackPageView) 的创建,因此通常您在这里不需要 trackEvent。您可以在 Activity 生命周期的 onStart 和 onStop 之间的任何其他方法上成功调用 trackEvent。
关于Android google analytics easytracker - 在启动器 Activity 崩溃的 onCreate 方法中跟踪事件调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11054799/