Android SDK v4中被忽略的参数

7

自从我切换到SDK v4后,我在LogCat中注意到以下内容:

W/GAV3﹕ Thread[main,5,main]: 未识别int配置名称:ga_dispatchPeriod W/GAV3﹕ Thread[main,5,main]: 未识别字符串配置名称:ga_appVersion

所有其他参数都很好,但这些参数似乎真的被忽略了。有什么想法吗?

谢谢。


34
Google Analytics v4 for Android的文档是我从Google看到过的最糟糕的文档! - Atul Goyal
1
嗨,Atul,很抱歉文件不够清晰易懂。我希望听到您对SDK文档如何改进的想法。不知道您是否介意详细说明一下您不喜欢的地方?您可以使用我的<lastname>.<firstname> [at] gmail.com给我发邮件。 - Avi
2
@Avi:在您的个人资料中找不到您的姓氏以便发送电子邮件。无论如何,以下是我发现令人困惑的一些事情。在“Dev-guide”中没有提到您在回答中提到的“全局配置”。只有当我按照您提供的链接进入API参考时,我才意识到全局配置的存在。ga_dryRun也应该在全局配置中,但从跟踪器配置中也可以正常工作,这很奇怪?澄清哪个参数应该在哪个配置中的好地方可能是这里 - Atul Goyal
2
此外,迁移到V4版本非常痛苦,因为没有可用的明确迁移指南(就像以前的迁移指南一样)。我真的希望GA Android SDK不会成为那些突然被放弃的Google项目之一。 - Atul Goyal
@Avi,您能否在文档中指明哪些属性应该放在哪个跟踪器配置中?设置跟踪非常令人困惑。我是Android应用程序开发的新手,到目前为止,文档非常好,但在这一点上(分析),它变得非常混乱。 - gorgi93
显示剩余4条评论
2个回答

9
抱歉造成困扰。您是否在全局配置中指定了 ga_dispatchPeriod 和 ga_appVersion 值?如果没有,请将它们移动到全局配置中。此链接说明了如何设置全局配置:这里
请注意,全局配置与跟踪器配置不同,跟踪器配置文档在这里
如果这不能解决您的问题,您能否粘贴完整的xml文件和您是如何设置它的?
谢谢!

谢谢。我必须做两件事才能使它工作。首先,我必须将其移动到全局配置中。我真的认为在文档中应该更好地解释这个跟踪器配置是新的。其次,我必须删除我正在使用的资源链接作为版本号。否则,我可以在Charles代理中看到发送带有参数av设置为@string/appVersionNumer的命中。为什么我们不能在这里使用资源? - Guillaume
1
@avi,Google Analytics V4 的官方文档真是令人头疼。你可以在 https://developers.google.com/analytics/devguides/collection/android/v4/#next-steps 上看到 Configuration Parameters,但是在 SDK 文档中却没有任何提及 <meta-data android:name="com.google.android.gms.analytics.globalConfigResource" android:resource="@xml/app_global_tracker"/> 这个参数只用于全局配置。我花了很多时间才明白这一点,需要读很多帖子。 - cwhsu
1
拜托,如果这是真的情况,你们必须在文档中告诉我们,这样我们就不会认为有错误或配置不正确。在GA v3中,只要配置正确,数据就会立即上传。但在GA v4中,我等待的时间太长了,以至于我认为代码或配置有问题。请在文档中告诉我们所有需要知道的信息!!! - cwhsu
整个设置步骤在这里逐步记录(比Google的文档好得多):http://qnatech.wordpress.com/2014/12/31/how-to-setup-google-analytics-for-android-apps/ - Jasper
如果我理解正确,我们可以完全跳过“全局配置”。我们启动Tracker,它使用在AndroidManifest.xml中指定的应用程序名称和版本。我有什么遗漏吗? - Alex Cohn
显示剩余3条评论

4

哇,为什么这个东西要这么复杂?我使用一个XML文件来追踪应用程序特定的配置和全局配置,并且只需在清单中添加这个meta标签来指向那个单一的XML文件,像这样:

<meta-data android:name="com.google.android.gms.analytics.globalConfigResource"
            android:resource="@xml/app_global_tracker"/>

在我的代码中,我只需执行Tracker t = analytics.newTracker(R.xml.app_tracker); 就可以了。


1
在您的 analytics.newTracker 中,您是否是指 app_global_tracker 而不是 app_tracker? - Jasper
1
实际上,您甚至不需要将此代码添加到清单中,只需在res>xml>whatever.xml中创建一个xml文件,将所有分析特定设置放入其中,并从代码Tracker t = analytics.newTracker(R.xml.whatever);指向它。 - ThanosFisherman
这就是iosched 2104的做法。有两个跟踪器 - 调试和发布。我完全按照他们的方式去做,但几乎没有成功。为什么谷歌的所有商业相关设置都如此麻烦! - WindRider
感谢@ThanosF:这是我们看到的警告的真正来源。我们的应用程序尝试使用相同的XML文件进行跟踪器配置和全局配置,而像ga_appNamega_appVersion这样的设置会导致“未被识别”的警告。我们从AndroidManifest.xml中删除了<meta-data />,并从res/xml/app_tracker.xml文件中删除了有问题的行,现在我们没有警告了! - Alex Cohn

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