Xamarin.iOS部署iPhone 13时缺失AppIcon60x60@2x.png报错求助
解决Xamarin iOS部署实体设备时缺失AppIcon60x60@2x.png的问题
问题概述
在VS 2022 v17.9.7中开发的Xamarin iOS项目,添加应用图标后部署到运行iOS 17.4.1的实体iPhone 13时,出现System.IO.FileNotFoundException,提示找不到AppIcon60x60@2x.png;应用可正常部署到iOS模拟器,但LaunchScreen.storyboard无法显示,且实体设备此前部署时LaunchScreen显示正常。已尝试清理解决方案、删除bin/obj目录等操作,问题仍存在,且Xamarin官方支持已终止。
解决方案
1. 手动添加缺失的图标文件
iOS 17+实体设备对图标尺寸要求严格,AppIcon60x60@2x.png对应120x120像素的iPhone图标:
- 生成120x120像素的PNG格式图标,命名为
AppIcon60x60@2x.png - 右键iOS项目的Resources目录,选择「添加现有项」将该文件加入项目
- 在文件属性面板中,设置:
- Build Action:
BundleResource - Copy to Output Directory:
Copy if newer
- Build Action:
2. 修复Assets.xcassets的AppIcon配置
检查资源目录中的AppIcon资产集是否完整:
- 打开项目中的
Assets.xcassets,找到AppIcon资源组 - 确认存在
iPhone App Icon 60pt @2x的占位项,若缺失则手动添加对应尺寸的图标 - 确保所有图标像素尺寸符合要求,避免编译时actool无法生成目标文件
3. 清理Xamarin全局缓存
除项目的bin/obj目录外,清理Xamarin的构建缓存:
- 关闭Visual Studio
- 删除路径
/Users/prescottchartier/Library/Caches/Xamarin/mtbs/builds/OML_iOS下的所有内容 - 重新打开项目并执行「重新生成解决方案」
4. 修复LaunchScreen.storyboard配置
针对LaunchScreen无法显示的问题,同步检查以下设置:
- 打开LaunchScreen.storyboard,确认其Build Action为
InterfaceDefinition - 检查storyboard内的元素是否配置了正确的Auto Layout约束,避免iOS 17设备上布局异常
- 在项目属性的iOS Application选项卡中,确认Launch Screen File已指定为
LaunchScreen.storyboard
5. 临时降级iOS SDK版本
若上述方法无效,尝试使用兼容的低版本iOS SDK编译:
- 右键iOS项目选择「属性」,进入iOS Build选项卡
- 将Sdk Version设置为
iOS 16.4或其他稳定版本 - 重新生成并部署到实体设备
内容的提问来源于stack exchange,提问作者Prescott Chartier
相关产品推荐
相关产品推荐

