Google Analytics Android SDK V4 混淆问题

22
我迄今为止一直在我的应用程序中使用Google Analytics SDK for Android V3,它一直运行良好(我的应用程序支持Android 3.0及以上版本)。现在V3已经被弃用,最新的是Google Analytics SDK v4 for Android
通过阅读官方文档以及this博客文章,我已经成功地使其工作。但我仍有几个问题:
1) 什么是“全局跟踪器”和“应用程序跟踪器”?它们背后的概念是什么?如果我有多个Android应用,那么有什么区别?我的所有应用程序都应该有相同的全局跟踪器吗?从这个意义上说,它是“全球性”的吗?我有点糊涂了。
2) V4使用Google Play服务V4.3及以上版本,并且没有像V3那样的独立库。因此,可以安全地删除V3库jar文件和代码吗?Google开发者页面确实说过这一点:
SDK可以在没有Google Play服务的设备上使用并工作。在这种情况下,SDK将自动回退到本地调度。
另外,
通常,在运行Android 2.3(姜饼)或更高版本且安装了Google Play商店应用程序的设备上,会在几天内收到更新。这使您可以使用Google Play服务中最新的API并覆盖Android生态系统中的大多数设备(不支持早于Android 2.3或没有Google Play商店应用程序的设备)。

那么,使用V4后,我的应用程序跟踪是否仍将在所有设备上工作,这些设备可能没有安装Google Play服务V4.3或更高版本?如果不行,那么应用程序会因为找不到分析代码所需的特定类而崩溃吗?或者,可以安全地假定所有Android 2.3+设备都与V4兼容吗?

注意:Google Play服务文档页面确实显示了如何检查是否可用Google Play服务。但是,由于分析不影响我的应用程序功能,我不想不必要地提示用户。另外,我可以进行检查,但我不想错过任何分析信息。

2个回答

7

1) 什么是全局跟踪器和应用程序跟踪器?背后的概念是什么?如果我有多个Android应用程序,那么有什么区别。所有我的应用程序是否都应该具有相同的全局跟踪器?在这个意义上它是“全球”的吗?我有点不明白。

它们基本上是相同的东西,只是以不同的方式配置为示例。如果您有多个应用程序,则可能希望使用两者,以便将每个应用程序跟踪到其自己的Google Analytics属性以及滚动所有数据的全局属性。但是跟踪器对象完全相同。大多数情况下,您只需使用其中之一。因此,请忽略文档中的那部分,并将其视为如何设置跟踪器的示例。选择一个并坚持使用。我建议使用更清洁的xml配置方法。

2) V4使用Google Play服务V4.3及以上版本,没有像V3一样的独立库。那么,删除V3库jar文件和代码是否安全?Google开发者页面确实如此说。

是的。可以安全地删除。任何Android设备2.2以上版本都将安装Play服务。您可能需要检查它是否不可用,以便在应用程序中跳过跟踪。


是的,这些设备将拥有Google Play服务。但它们是否拥有Google Play服务V4.3或更高版本?因为分析功能是在V4.3中添加到GPS中的。另外,您所说的XML配置方法是什么意思?有任何示例吗? - rgamber
xml方法用于全局跟踪器:https://developers.google.com/analytics/devguides/collection/android/v4/ - Eduardo
我的理解是Play Services会自动更新。 "运行Android 2.3或更高版本且拥有Google Play商店应用程序的设备将自动接收Google Play服务的更新" 来源:http://developer.android.com/google/play-services/index.html - Eduardo
4
这并不正确。例如,Kindle设备没有安装Play商店,因此它们将没有Google Play服务。@Eduardo的说法是错误的。 - theelfismike
1
@Eduardo 你确定所有的安卓设备都会安装 Play Services 吗?在中国,近98%的安卓设备都没有 Play Services! - Allen Heavey

5

1) 什么是全局跟踪器和应用程序跟踪器?这背后的概念是什么?如果我有多个Android应用程序,那么有什么区别。我的所有应用程序都应该使用相同的全局跟踪器吗?从这个意义上来说它是“全球”的吗?我有点不清楚。

全局跟踪器旨在跟踪您想要跨不同应用程序跟踪的内容,无论它们是完全不同的应用程序还是针对不同平台的同一应用程序。如果您不需要它,可以只保留应用程序跟踪器而不使用任何全局跟踪器。

2) V4使用Google Play服务V4.3及以上版本,并且没有像V3一样的独立库。因此,删除V3库jar文件和代码是否安全?

是的,不再需要V3库jar文件。现在使用的是Play Services库而不是分析V3库。主要区别在于,将数据(通过分析V3库)发送的是您的应用程序,但是现在使用的是Play Services APK进行发送。如果设备上没有所需的Play Services APK,则Play Services库将退回到本地分发,这意味着您的应用程序会像以前一样直接分发数据。

分析成为Play服务4.3的一部分对我来说意味着:

  1. Google Analytics成为Android上的第一类公民。Play services比独立的分析库更受欢迎,我希望更多人通过此变化开始使用GA。
  2. 由于APK自动更新,将分派作为Play Services APK的一部分,将能够获得更快的改进。

API本身有其他增强功能(全局跟踪器等),但是它们与分析成为Play Services的一部分无关。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接