You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Xamarin iOS构建生成空白图标 部署至iPhone时报找不到文件错误

Xamarin.Forms iOS构建空白图标问题解答

1. 空白图标是否为构建过程生成

是。这些0KB的空白图标是Xamarin.iOS构建流程中actool(资产目录编译器)生成的临时占位产物,生成路径为你提到的obj\iPhoneSimulator\Debug\actool\bundle和bin\iPhoneSimulator\Debug\DaemonDictionary.iOS.app目录。
正常构建流程中,这些占位文件会被Assets.xcassets中配置的有效图标覆盖,若覆盖流程失败就会残留0KB空白文件,部署真机时会触发文件找不到的错误。

2. Assets.xcassets图标是否有文件名要求

Assets.xcassets对图标源文件的文件名没有强制要求,但存在两类隐形规则:

  • AppIcon下每个槽位对上传的图标有严格的像素尺寸、倍数要求,若上传的图标尺寸与槽位要求不匹配,或槽位空缺,actool会生成对应尺寸的空白占位文件
  • 若你的Info.plist中保留了已废弃的旧版图标配置项CFBundleIconFiles,该数组中列出的图标文件名如果在项目中不存在,构建工具会自动生成同名0KB空白文件

3. 触发空白图标生成的常见配置问题

  • Info.plist残留无效配置:检查Info.plist文件,删除CFBundleIconFiles等非资产目录模式的旧图标配置,仅保留XSAppIconAssets指向你的Assets.xcassets/AppIcon路径即可
  • AppIcon槽位不完整:打开Assets.xcassets下的AppIcon,确认所有对应设备类型的槽位都上传了符合尺寸要求的图标,没有空缺项
  • 项目文件配置冲突:打开iOS项目的.csproj文件,删除多余的<ImageAsset>、<BundleResource>条目指向不存在的图标文件,避免重复的AppIcon配置
  • 构建缓存损坏:若以上配置均无问题,删除项目根目录下的obj、bin文件夹,若使用Windows连接Mac构建,同时清空Mac主机~/Library/Caches/Xamarin/mtbs目录下的对应项目缓存,重新构建即可解决问题

内容的提问来源于stack exchange,提问作者Matt R

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 20:36:00