【发布时间】:2014-02-07 19:23:48
【问题描述】:
我正在为另一家公司做合同工作,他们最终将构建提交给 Apple。我正在为 TestFlight 构建使用通配符分发配置文件,他们在提交给 Apple 之前重新签名。
我最近切换到为 AppIcon 使用 Images.xcassets,从 Xcode 看起来一切都很好。没有关于应用程序图标或存档错误的警告,但是,当他们提交给 Apple 时,由于缺少应用程序图标,它没有通过元数据审查。具体如下:
- 在顶级应用下找不到 Info.plist 中指定的图标 包装器:AppIcon40x40
- 在顶级应用下找不到 Info.plist 中指定的图标 包装器:AppIcon60x60
- 在顶级应用下找不到 Info.plist 中指定的图标 包装器:AppIcon50x50
- 在顶级应用下找不到 Info.plist 中指定的图标 包装器:AppIcon72x72
- 在顶级应用下找不到 Info.plist 中指定的图标 包装:AppIcon76x76
- iPad:AppIcon57x57.png:图标尺寸 (57x57) 不符合尺寸 要求。图标文件必须为 72x72,为 .png 格式
所有其他图标(为 iOS 6/7 通用应用程序构建)似乎都很好。我确保 .xcassets 是我的目标和所有其他各种建议的一部分。
所以我打开了 .ipa 和 Payload 来检查 Xcode 做了什么。除了 AppIcon60x60 之外,它将我的文件的名称更改为 AppIcon40x40~iPad,其余文件的名称类似。 AppIcon60x60 实际上被称为 AppIcon60x60@2x(这是有道理的,因为它是 120x20 像素)。 Info.plist中的文件名没有包含iPad图标的~iPad后缀,我觉得这导致了拒绝的问题。
当您使用 Images.xcassets 时,我的印象是 Xcode 会自动命名图标并适当地填写 Info.plist。我想知道使用通配符分发配置文件归档应用程序是否存在问题。
我最终通过删除 Images.xcassets 并手动分配图标,然后进入 Info.plist 并删除一些额外的条目来成功提交。任何意见将不胜感激,谢谢!
【问题讨论】: