XCode 14集成AdMob时Info.plist配置冲突及签名问题求助
解决Xcode 14+自动生成Info.plist时添加AdMob密钥的冲突问题
核心问题原因
Xcode 14及以上版本默认启用自动生成Info.plist功能,生成的文件存放在DerivedData目录中;如果手动在项目主目录添加Info.plist,编译时会出现两个同名文件冲突;关闭自动生成功能后,因项目目录下缺少Info.plist文件,又会触发代码签名错误。
无需手动创建Info.plist的解决方案
直接通过Xcode的Target设置添加AdMob所需密钥,自动生成的Info.plist会自动包含这些配置:
方法1:通过Target的Info面板添加(推荐)
- 选中项目中的目标Target,切换到「Info」标签页
- 点击面板底部的**「+」按钮**,添加AdMob所需的键值对:
- 必填项:添加键
GADApplicationIdentifier,值填写你的AdMob应用ID(格式如ca-app-pub-xxxxxxxxxxxxxxxx/yyyyyyyyyy) - 若需用户追踪(ATT框架):添加键
NSUserTrackingUsageDescription,值填写向用户说明追踪用途的文案(比如"需要追踪您的行为以提供个性化广告")
- 必填项:添加键
- 添加完成后,Xcode自动生成的Info.plist会包含这些配置,不会出现文件冲突或签名问题
方法2:通过Build Settings配置
- 选中Target,切换到「Build Settings」标签页
- 在搜索框输入「Info.plist Values」,找到对应的配置项
- 点击「+」添加自定义键值对,填入AdMob所需的键和对应值即可
验证配置是否生效
编译项目后,可通过以下方式确认配置已加入自动生成的Info.plist:
- 打开Xcode的「Report Navigator」(左侧导航栏最后一个图标)
- 找到最新的编译记录,展开后找到「Generate Info.plist File」步骤
- 点击该步骤右侧的「Logs」,查看生成的Info.plist内容,确认AdMob密钥已存在
内容的提问来源于stack exchange,提问作者Aviran
相关产品推荐
相关产品推荐

