我有以下GoogleService-info.plist文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>TRACKING_ID</key>
<string>$(GA_tracking_id)</string>
<key>PLIST_VERSION</key>
<string>1</string>
<key>BUNDLE_ID</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
</dict>
</plist>
我的部分构建设置如下所示:
但是,当我记录Google Analytics时,该变量未取消引用:
VERBOSE: GoogleAnalytics 3.13 -[GAIBatchingDispatcher persist:] (GAIBatchingDispatcher.m:517): Saved hit: {
parameters = {
"&av" = "1.0.0";
"&dm" = "x86_64";
"&ds" = app;
"&sr" = 640x1136;
"&t" = screenview;
"&tid" = "$(GA_tracking_id)";
"&ul" = "en-us";
"&v" = 1;
gaiVersion = "3.13";
};
timestamp = "2015-11-04 17:38:54 +0000";
}
我在Fabric中使用过这种策略,但那是在我的Info.plist
文件中。此外,$(PRODUCT_BUNDLE_IDENTIFIER)
按预期工作。如何将变量取消引用而不是打印出它的文字字符串值。
答案 0 :(得分:5)
您无法在自定义plist文件中使用用户定义的设置,其中包括Google Analytics。
我在其他答案中找到了解决方法: https://stackoverflow.com/a/34070725/2192163 基本上,诀窍是创建一个运行脚本,将您的自定义plist版本复制到Google Analytics plist版本。