文件位置
Info.plist文件通常在项目文件文件夹下,找到项目文件后,查找同名文件夹。
进入同名文件夹后,即可找到Info.plist文件。
打开后,可以编辑相关的配置信息:
如果没有找到Info.plist文件,则需要进行创建。
创建Info.plist文件
1、右键创建新文件
2、选择Resource > Property List,点击Next。
3、命名文件为Info.plist,并点击Create。
完成后,可以在创建位置发现Info.plist文件。
4、关联Info.plist文件
打开项目配置页面(从左上角项目名称打开配置页面),选择项目 – Build Settings标签。
在配置页面搜索框输入 Info.plist 或 Info.plist File:
可以在Packaging中找到Info.plist File,后面的内容是空的。
双击输入Info.plist基于当前文件的位置,如:项目名/Info.plist
ERdepot/Info.plist
配置完成后,Info.plist文件与项目关联成功。
问题报错
如果运行应用时,提示以下报错:
Multiple commands produce '/Users/fangjunyu/Library/Developer/Xcode/DerivedData/ERdepot-auclbqnstagdvddfrpviavxiaywz/Build/Products/Debug-iphoneos/ERdepot.app/Info.plist'
报错的意思是项目中有多个构建命令试图生成或使用相同的 Info.plist 文件,导致冲突。
这个问题比较棘手,当我尝试删除配置的Info.plist文件,去尝试修改报错路径中的Info.plist后,问题仍然无法解决。
报错路径为Xcode的Derived Data目录中的文件路径。Derived Data 是 Xcode 在构建项目时生成的中间文件和缓存的存放位置,包括目标构建文件、临时的配置文件等。
解决方案
经过多次尝试,我的解决方案为:
1、检查项目配置中Build Phases是否存在Info.plist文件:
确保 Info.plist 没有被错误地添加到这个列表中(它不应该出现在这里)。
如果 Info.plist 在此列表中,点击左侧减号将其移除。
我把下图中的Info.plist从Build Phases中删除。
2、检查刚才配置的Info.plist File字段是否正确,如果刚才是按照教程配置,则可以忽略。
3、清理构建文件夹:
在 Xcode 中,选择菜单 Product > Clean Build Folder(快捷键 Shift+Cmd+K)。
4、删除 Derived Data文件夹内的数据
手动删除 ~/Library/Developer/Xcode/DerivedData。
可以在访达中,按Command + Shift + G快捷键,打开前往文件夹,输入:
~/Library/Developer/Xcode/DerivedData
将DerivedData内的文件夹数据全部删除。
5、按Command + Q强退Xcode应用,然后重新打开并运行项目应用。
6、进入到应用中,问题得到解决。如果在手动创建的Info.plist添加配置,还可以进一步验证Info.plist的完成进度。
备注:如果项目配置Lottie,在删除DerivedData文件夹数据后,还需要重新配置Lottie,不清楚的话,可以查看教程《Xcode集成lottie动画》