使用fastlane+Capacitor上传TestFlight遇ITMS系列错误求助
根治Capacitor iOS应用TestFlight图标验证错误的方案
1. 彻底重置Capacitor的iOS图标配置
- 删除iOS项目中
Assets.xcassets/AppIcon.appiconset目录下所有图标文件 - 确保Capacitor项目根目录的
resources文件夹下有符合要求的图标源文件(至少包含1024x1024的App Store图标,以及适配各设备尺寸的图标) - 执行
npx cap sync ios重新同步资源到Xcode项目,该命令会严格遵循Capacitor规范生成iOS端图标配置 - 打开Xcode检查
Assets.xcassets中的AppIcon,确认所有尺寸的图标都已正确填充,无缺失或尺寸错误的文件
2. 修正Info.plist的图标相关配置
- 打开iOS项目的
Info.plist,确保CFBundleIconName的值严格匹配Assets.xcassets中的图标集名称(默认是AppIcon,注意拼写) - 删除冗余的图标相关键值对,比如旧的
CFBundleIcons或CFBundleIcons~ipad配置,避免与Asset Catalog的配置冲突 - 确认
CFBundlePrimaryIcon下的CFBundleIconName也指向正确的图标集名称
3. 调整fastlane的upload_to_testflight参数
- 在fastlane的
Fastfile中,给upload_to_testflight添加参数,避免自动修改图标元数据并确保构建产物干净:upload_to_testflight( skip_metadata: true, skip_screenshots: true, clean_build_artifacts: true )
4. 强制Xcode清理缓存并重新构建
- 在Xcode中执行
Product > Clean Build Folder(快捷键Cmd+Shift+K)清理构建缓存 - 关闭Xcode,删除iOS项目对应的
DerivedData文件夹(路径一般为~/Library/Developer/Xcode/DerivedData/[项目名]-*) - 重新打开Xcode,选择
Product > Archive重新打包,确保Xcode重新生成所有图标资源
5. 验证图标文件合规性
- 打开
Assets.xcassets/AppIcon.appiconset,右键选择Validate App Icons,用Xcode工具验证图标是否符合苹果要求 - 检查所有图标:无多余alpha通道(通知图标除外)、尺寸精确、格式为PNG
- 确认1024x1024的App Store图标无圆角(苹果会自动添加),避免图标被裁剪
内容的提问来源于stack exchange,提问作者natterstefan
相关产品推荐
相关产品推荐

