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

React Native iOS应用提交App Store时图标格式报错求助

iOS App Store提交图标报错解决方案

针对你使用eas submit --platform ios或Transporter上传时遇到的「iOS应用图标缺失或格式无效,必须是无透明的1024x1024 PNG」错误,以下是实用排查和解决步骤:

一、验证图标文件本身

  • 检查隐性透明度:用Mac预览打开图标文件,点击「文件-导出」,勾选「消除透明度」后保存为新PNG替换原图标
  • 确认格式规范:用Photoshop导出时设置「不透明度100%」,选择PNG-24格式,确保无alpha通道残留
  • 核对分辨率:通过预览「显示简介」确认图标确实为1024×1024像素,无拉伸或缩放异常

二、修正app.json配置问题

你的配置存在重复图标定义,可能导致Expo处理冲突:

  • 移除根expo字段下的"icon": "./assets/images/Peace3.png",仅保留ios字段内的图标配置
  • 删除ios.infoPlist中的"CFBundleIconName": "Peace3",Expo会自动生成图标集及对应配置,手动添加该字段易引发路径不匹配问题

修正后的关键配置片段:

{
  "expo": {
    "scheme": "acme",
    "name": "job_it",
    "slug": "job_it",
    "platforms": [
      "ios"
    ],
    "notification": {
      "icon": "./assets/images/Peace3.png",
      "color": "#000000",
      "iosDisplayInForeground": true
    },
    "version": "1.0.0",
    "orientation": "portrait",
    // 移除根节点的icon配置
    "splash": {
      "image": "./assets/images/Peace2Small1024.png",
      "resizeMode": "contain",
      "backgroundColor": "#ffffff"
    },
    "updates": {
      "fallbackToCacheTimeout": 0
    },
    "assetBundlePatterns": [
      "**/*"
    ],
    "ios": {
      "icon": "./assets/images/Peace3.png",
      "bundleIdentifier": "com.jwin.ios",
      "buildNumber": "1.0.0",
      "infoPlist": {
        // 移除CFBundleIconName字段
        "NSCameraUsageDescription": "Search for jobs and go to the application page right from the app!",
        "NSLocationWhenInUseUsageDescription": "This app does not require location access to function properly.",
        "NSLocationAlwaysAndWhenInUseUsageDescription": "This app does not require constant location access to function properly."
      }
    },
    "extra": {
      "eas": {
        "projectId": "2fe8412c-0a6c-4ccc-b2a5-131ec4b8f44c"
      }
    },
    // 注意:android字段package值建议改为对应安卓包名(如com.jwin.android),避免混淆
    "android": {
      "package": "com.jwin.android"
    }
  }
}

三、清理缓存并重新构建

  • 清理Expo缓存:执行npx expo prebuild --clean
  • 重新生成构建包:eas build --platform ios
  • 使用新包提交:eas submit --platform ios

四、额外排查点

  • 确认图标路径准确性:检查./assets/images/Peace3.png是否存在,文件名大小写是否与配置完全匹配(iOS区分文件名大小写)
  • 查看构建日志:在EAS构建过程中搜索「icon」相关日志,确认图标是否被正确加载处理,有无报错提示

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 13:33:14