在Google Analytics V4中,我应该发送哪个屏幕名称?

我按照本指南在我的Android应用中实施了Google Analytics。 我无法理解该文件。

在文档中,它说创建一个XML文件,并将其作为内容:

 SomeApp MainActivity  

要发送屏幕视图,我必须这样做:

 Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(TrackerName.APP_TRACKER); t.setScreenName(screenName); t.send(new HitBuilders.AppViewBuilder().build()); 

但是,我不确定这个screenName应该是什么。 它是name值( com.mycompany.myapp.MainActivity )还是screenName值( SomeApp MainActivity )?

只要启用“自动活动跟踪”,就会使用您描述的xml配置。 每当活动开始时,此跟踪会自动报告新的屏幕视图,从而使您无需手动触发代码中的屏幕视图事件。

要启用自动活动跟踪,您可以在跟踪器的xml配置中将ga_autoActivityTracking布尔值设置为true:

  true 

默认情况下,此自动报告工具将使用您的Activity类名称作为报告的屏幕名称(例如com.mycompany.myapp.MainActivity )。 这些类名通常很长且难以阅读,因此Google允许我们为每个活动自定义报告的屏幕名称。 这就是你的问题的这一部分:

  SomeApp MainActivity  

使用此配置,自动活动跟踪将在自动报告该活动的屏幕视图时使用字符串“SomeApp MainActivity”而不是“com.mycompany.myapp.MainActivity”。

请务必注意,如果您使用自动活动跟踪,则会忽略跟踪器xml中的任何屏幕名称配置。 在这种情况下,每次以编程方式触发屏幕视图事件时,都必须指定屏幕名称。 这就是你的代码示例中发生的事情:

 Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(TrackerName.APP_TRACKER); t.setScreenName(screenName); t.send(new HitBuilders.AppViewBuilder().build()); 

xml配置中的屏幕名称设置未在此代码中使用,因为它不是自动活动跟踪的一部分。 相反,您必须在发送屏幕视图之前在跟踪器上手动设置屏幕名称。 这比自动活动跟踪更灵活 – 例如,在片段繁重的应用程序中,可以通过片段事务而不是活动更改来执行导航。 在这种情况下,单独跟踪活动更改不会适当地报告应用中的每个屏幕更改。 自动活动跟踪应该比手动发送屏幕视图更少开销,但我发现它不灵活且更容易出错(每次引入新活动时都必须手动将条目添加到xml中,这很容易忘记)。

我想你只想向GA发送“SomeActivity”字符串。 如果你想轻松做到,你可以在这篇文章中看到我的回复。 我认为它会对你有所帮助。

Google Analytics(分析) – 在AsyncTask中发送的NetworkOnMainThreadException

只需在String中为当前屏幕(视图)的名称设置标记即可。 它将用于跟踪用户正在查看的屏幕。