Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/112.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 以编程方式更新Xcode目标生成设置_Ios_Xcode_Ios Extensions - Fatal编程技术网

Ios 以编程方式更新Xcode目标生成设置

Ios 以编程方式更新Xcode目标生成设置,ios,xcode,ios-extensions,Ios,Xcode,Ios Extensions,我有一个Xcode iOS项目,有两个目标。这些目标中的每一个都包括第三个目标,即iOS扩展(小部件)。有没有办法根据choosen构建目标更新小部件构建设置 我已经在Xcode目标构建方案中设置了一些预操作,用父包标识符更新小部件的Info.plist文件: # BundleIdentifier bundleIdentifier=${PRODUCT_BUNDLE_IDENTIFIER} # Widget Identifier widgetIdentifier="WidgetName" # up

我有一个Xcode iOS项目,有两个目标。这些目标中的每一个都包括第三个目标,即iOS扩展(小部件)。有没有办法根据choosen构建目标更新小部件构建设置

我已经在Xcode目标构建方案中设置了一些预操作,用父包标识符更新小部件的
Info.plist
文件:

# BundleIdentifier
bundleIdentifier=${PRODUCT_BUNDLE_IDENTIFIER}
# Widget Identifier
widgetIdentifier="WidgetName"
# updating BundleIdentifier in widget InfoPlist
/usr/libexec/PlistBuddy -c "Set :CFBundleIdentifier $bundleIdentifier.$widgetIdentifier" "${SRCROOT}/${widgetIdentifier}/ConfigFiles/Info.plist"
我的两个主要目标包标识符是
com.company.firstname
com.company.secondname
。如您所见,我能够更新小部件的
Info.plist
,特别是
CFBundleIdentifier
键。
我是否可以执行类似的操作来更新小部件
产品包标识符的build settings参数?我需要根据当前目标更新小部件构建设置,使其类似于
com.company.firstname.widgetname
com.company.secondname.widgetname

@matt您能否提供一些代码,如您所说,通过脚本设置环境变量?请使用不同的构建方案检查每个构建。这将允许您将捆绑包标识符定义为生成设置,而无需使用脚本。@matt您可以提供一些代码,如您所说,通过脚本设置环境变量吗?请为每个生成使用不同的生成方案。这将允许您将包标识符定义为生成设置,而无需使用脚本。