美好的一天,
我接受了一些关于Udacity的培训,他们向我们展示了如何使用谷歌分析来跟踪我的应用程序使用情况。
我接受了T培训,这意味着要创建一个" MyApplication" class并在启动时实例化它。
MyApplication.java中的代码扩展了应用程序
public Tracker mTracker;
public void startTracking() {
if (mTracker == null) {
GoogleAnalytics ga = GoogleAnalytics.getInstance(this);
mTracker = ga.newTracker(R.xml.track_app);
ga.enableAutoActivityReports(this);
ga.getLogger().setLogLevel(Logger.LogLevel.VERBOSE);
System.out.println("Tracking - Tracking has started a new object");
} else {
System.out.println("Tracking - Tracking has already been started");
}
}
public Tracker getTracker() {
startTracking();
return mTracker;
}
然后在启动应用程序时启动的类的onCreate方法中调用StartTracking()。我遇到的问题是出于一些愚蠢的原因,可能它不会向GAnalytics发送命中!
我还创建了Tracking_app.xml文件,其中包含我的GA跟踪代码和屏幕名称,以及在Android Manifest中设置权限并设置android:name =" .MyApplication&#34 ;在清单中。
我很失落,为了让这项工作变得我需要做什么?
答案 0 :(得分:1)
您需要添加文件调用app_tracker.xml
假设如下:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<integer name="ga_sessionTimeout">300</integer>
<!-- Enable automatic Activity measurement -->
<bool name="ga_autoActivityTracking">true</bool>
<bool name="ga_reportUncaughtExceptions">true</bool>
<!-- The screen names that will appear in reports -->
<screenName name="myapplication.MainActivity">
MainActivity
</screenName>
<screenName name="myapplication.SplashScreen">
SplashScreen
</screenName>
<!-- The following value should be replaced with correct property id. -->
<string name="ga_trackingId">UA-(this is private :p)</string>
</resources>
另一个叫analytics_global_config.xml
<?xml version="1.0" encoding="utf-8" ?>
<resources>
<string name="ga_appName">Your app name here</string>
<string name="ga_appVersion">app version here</string>
<!--Remember to disable verobse log level for production -->
<string name="ga_logLevel">Verbose</string>
<integer name="ga_dispatchPeriod">1000</integer>
<bool name="ga_dryRun">false</bool>
</resources>
请注意ga_trackingId
有效。