无效的二进制文件:无效的启动映像/ iPhone 5优化要求/缺少推送通知权利

时间:2013-04-24 15:30:16

标签: ios iphone-5

我最近的应用版本已作为无效二进制文件被拒绝,并带有以下注释:

启动图片无效 - 您的应用包含一个尺寸修改器的启动图像,该版本仅支持使用iOS 6.0 SDK或更高版本构建的应用。

虽然您不需要解决以下问题,但我们想让您了解它们:

iPhone 5优化要求 - 您的二进制文件未针对iPhone 5进行优化。截至5月1日,所有提交的新iPhone应用和应用更新都必须支持iPhone 5上的4英寸显示屏。所有应用必须包含适当大小的启动图像。通过查看iOS人机界面指南,了解有关iPhone 5支持的更多信息。

创建的应用程序可在全屏中运行 iPhone 4-5 iPad 1-3 (使用和不使用Retina)。我创建的发布图像是这样的:

Default.png (640 x 1136)
Default-568h@2x.png (640 x 1136)
Default@2x~iphone.png (640 x 960)
Default-Portrait~iphone.png (320 x 480)
Default-Portrait@2x~ipad.png (1536 x 2008)
Default-Portrait~ipad.png (768 x 1004)
Default-Landscape@2x~ipad.png (2048 x 1496)
Default-Landscape~ipad.png (1024 x 748)

这些是在我的项目根目录中,并按上述顺序包含在AIR for iOS设置“包含的文件”列表中(命令是否重要?)。

当我加载应用程序时,启动图像会显示在我的iPhone 5和我的iPad 3上,虽然它们在第一次加载时似乎会调整大小/向左跳一点,然后才切换到应用程序的主屏幕。该应用程序在两个设备上都正确调整大小(没有黑色边距)。

也许我误读了尺寸。 Adobe似乎建议我使用全分辨率作为图像分辨率:

但是所有其他建议似乎都表明发布图像不应包含最终尺寸的菜单栏:

您可以提供任何建议,我们将不胜感激。

最后,Apple的回应包括以下内容:

缺少推送通知权利 - 您的应用似乎包含用于向Apple推送通知服务注册的API,但应用签名的权利不包含“aps-environment”权利。如果您的应用使用Apple推送通知服务,请确保在配置门户中为推送通知启用了您的应用ID,并在使用包含“aps-environment”权利的配置配置文件对应用进行签名后重新提交。有关详细信息,请参阅“本地和推送通知编程指南”中的“供应和开发”。如果您的应用不使用Apple推送通知服务,则无需执行任何操作。您可以从将来的提交中删除API以停止此警告。如果您使用第三方框架,则可能需要与开发人员联系以获取有关删除API的信息。

如果其他人正在搜索此问题,我可以通过此链接解决: App rejected because of "Missing Push Notification Entitlement"

2 个答案:

答案 0 :(得分:7)

我也有这个问题。刚刚在5分钟前修好了!这就是我做的。

创建以下三个.png图像文件并将其保存到src文件夹(不要将它们保留在assets文件夹中)。

  • Default.png(设置为320x480px) - iphone 3
  • Default@2x.png(设置为640x960px) - iphone 4
  • Default-568h@2x.png(设置为640x1136px) - iphone 5

这些文件不必链接到您的任何代码 - Apple在加载应用程序时使用它们来设置初始屏幕大小。古德勒克!

答案 1 :(得分:0)

您可能正在使用不包含Base SDK 6.0的XCode版本进行开发。为了包含iPhone 5 Default-568h@2x.png并且在上传后没有拒绝您的应用,您需要使用指向6.0的Base SDK构建它。包含Base SDK 6.0的XCode版本不再支持任何低于我认为4.2的iOS,因此,如果你的目标是iPhone 3或第一代iPod等设备,那你就不走运了。如果没有,那么只需将您的XCode更新到最新版本,并将项目构建设置中的Base SDK设置为最新版本,或至少6.0版。