Xcode如何向生成的Info.plist添加键 或合并生成与现有Info.plist
解决方案
方法1:直接在Build Settings中添加自定义Info.plist键
- 打开对应target的
Build Settings界面,在任意配置项上点击右键,选择「Add User-Defined Setting」 - 新增的配置项命名遵循
INFOPLIST_KEY_<标准Info.plist键名>的规则,比如要加加密合规声明就命名为INFOPLIST_KEY_ITSAppUsesNonExemptEncryption,要加定位使用权限描述就命名为INFOPLIST_KEY_NSLocationWhenInUseUsageDescription - 给对应的配置项设置你需要的值即可,Xcode构建时会自动把这些值写入自动生成的Info.plist中
- 注意:键名大小写必须和苹果官方规定的Info.plist标准键完全一致,之前方法失效大概率是拼写或大小写错误导致的
- 如果需要区分测试版和正式版的取值,直接在对应配置项下针对不同的Build Configuration设置不同的值即可,无需额外脚本处理
方法2:合并自定义Info.plist文件和自动生成配置
Xcode原生支持同时使用自定义Info.plist文件和Build Settings中的配置,构建时会自动合并二者内容,同键名的情况下Build Settings的配置优先级更高,会覆盖文件中的值:
- 把你已经写好的自定义Info.plist文件放到项目目录中,记得勾选添加到对应target
- 在Build Settings中搜索
Info.plist File配置项,将值设置为你自定义Info.plist文件的相对路径 - 构建后产物中的Info.plist会自动包含两处配置的所有键值
验证方式
构建完成后,在Xcode的Products组中找到对应.app包,右键选择「Show in Finder」,再右键.app包选择「显示包内容」,打开内部的Info.plist文件即可查看最终合并生成的所有内容。
内容的提问来源于stack exchange,提问作者Tomáš Kafka
相关产品推荐
相关产品推荐

