Xcode13构建React Native应用后App Icon不显示无法部署TestFlight求助
RN v0.60.1 iOS端Xcode 13上传TestFlight图标校验失败解决方案
第一步:全量清理缓存与旧构建产物
- 关闭Xcode后在项目根目录执行以下命令清理冗余文件:
cd ios && rm -rf ~/Library/Developer/Xcode/DerivedData && rm -rf build && pod deintegrate && pod install - 重新打开Xcode后先执行
Product → Clean Build Folder(快捷键⇧⌘K),再执行归档操作,不要复用旧的归档包
第二步:校验App Icon集配置
- 打开项目的
Images.xcassets,确认AppIcon集已填充所有要求尺寸的图标,必须包含1024x1024无alpha通道、无圆角的App Store营销图标 - 进入项目Target → Build Settings,搜索
ASSETCATALOG_COMPILER_APPICON_NAME,确认值与你xcassets中的图标集名称完全一致,默认值为AppIcon - Xcode全局搜索
CFBundleIconFiles,删除所有第三方依赖库plist文件中的相关配置,仅保留主项目Info.plist的配置,避免第三方配置覆盖主项目设置 - 归档完成后可提前校验:在Xcode Organizer中选中归档包,点击「Show in Finder」→ 右键选择「显示包内容」→ 进入
Products/Applications→ 右键.app文件选择「显示包内容」,确认目录下存在所有尺寸的AppIcon文件
第三步:修正Info.plist配置
- 删除主项目Info.plist中
CFBundleIconName、CFBundleIcons、CFBundleIconFile相关的旧版本图标配置,Xcode 13会自动从Assets目录读取图标,手动添加的旧配置会导致识别冲突 - 确认Info.plist中没有配置
CFBundleIcons~ipad这类分设备的冗余图标配置
第四步:RN项目专属排查
- 检查iOS项目根目录是否存在
icon.png/[email protected]这类零散图标文件,Xcode 13会优先读取根目录图标导致和Assets配置冲突,直接删除这类文件即可 - 若使用自动生成图标工具(如react-native-make),先升级工具到最新版本,再重新生成全套图标集,旧版本工具生成的图标集不符合Xcode 13规范
内容的提问来源于stack exchange,提问作者d.bayo
相关产品推荐
相关产品推荐

