使用Google Analytics for iOS而不使用.plist文件

根据Google的文档(iOS版Analytics),他们希望您下载一些自动生成的.plist文件来配置您的应用。 不幸的是,我有多个报表包(Debug,Release),需要根据构建动态切换。 所以我试图做两件事之一:

  1. 有没有办法完全放弃.plist文件并动态设置所有配置? 人们需要什么价值?

-要么-

  1. 我可以更改Google .plist文件中的值,以使用项目的用户定义构建设置中的变量吗? 我尝试在Google .plist文件中添加一个名为GOOGLE_ANALYTICS_ID并在$ {GOOGLE_ANALYTICS_ID}中引用它,但它不会像我期望的那样替换该值。

您是如何动态指示您的应用程序发送到不同的报表包,具体取决于您的应用程序是Debug还是Release?

您应该能够抛弃.plist文件并将其设置为:

#import "GAI.h" ... GAI *gai = [GAI sharedInstance]; [gai trackerWithTrackingId:@"your GA id"]; gai.trackUncaughtExceptions = YES; // optional gai.logger.logLevel = kGAILogLevelVerbose; // optional - remove for release 

不要使用GGLContext的东西,因为那是试图从-plist文件中获取参数。

遇到同样的问题。 我的解决方案是为QA和生产创建单独的构建目标,使用预处理器宏来代码中的目标特定设置和2个单独的plist文件,例如facebook app ID,bundle ID(您可以指定哪个plist文件构建目标正在使用项目设置的信息选项卡)。

同样的事情GA-2每个目标的plist文件,并避免命名冲突(因为如果您从GoogleService-Info更改plist名称,应用程序将崩溃) – 只需将您的QA plist放在单独的文件夹中,它仍然可以正常工作从那里。

不要乱用你的目标成员资格plists 🙂