使用Fastlane Gym构建React Native应用时ad-hoc打包报错:iCloudContainerEnvironment未赋值
解决Fastlane Gym Ad-Hoc打包时iCloudContainerEnvironment错误
问题原因
你的应用启用了iCloud服务,但Ad-Hoc打包导出时,exportOptionsPlist中缺少iCloudContainerEnvironment配置项,Xcode要求该值必须为Development或Production二者之一。
解决方法
方法1:在Fastlane Gym配置中直接指定
在Fastfile里给gym动作添加export_options参数,明确配置iCloudContainerEnvironment的值:
gym( scheme: "你的Scheme名称", export_method: "ad-hoc", export_options: { iCloudContainerEnvironment: "Production" # 按需选择"Development"或"Production" } )
方法2:自定义exportOptions.plist文件
如果需要更复杂的导出配置,可手动创建exportOptions.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>method</key> <string>ad-hoc</string> <key>iCloudContainerEnvironment</key> <string>Production</string> <!-- 或根据需求填写Development --> </dict> </plist>
之后在Gym中指定该文件路径:
gym( scheme: "你的Scheme名称", export_options: "./path/to/exportOptions.plist" )
方法3:关闭不必要的iCloud服务
如果你的应用实际不需要iCloud功能,可直接在Xcode项目的Capabilities面板中关闭iCloud服务,即可消除该配置要求。
内容的提问来源于stack exchange,提问作者Asleepace
相关产品推荐
相关产品推荐

