“您的二进制文件未针对 iPhone 5 进行优化"在我使用 xcode 6.0.1 上传应用程序后 [英] "Your binary is not optimized for iPhone 5" after I upload an app with xcode 6.0.1

查看:19
本文介绍了“您的二进制文件未针对 iPhone 5 进行优化"在我使用 xcode 6.0.1 上传应用程序后的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用 Xcode 版本 6.0.1 (6A317) 上传二进制文件后,我收到了这封电子邮件

<块引用>

您的二进制文件未针对 iPhone 5 进行优化 - - 新的 iPhone 应用程序和应用程序提交的更新必须支持 iPhone 5 上的 4 英寸显示屏,并且必须包括在 Info.plist 下引用的启动图像UILaunchImages 的 UILaunchImageSize 值设置为 {320, 568}.启动图像必须是 PNG 文件并且位于捆绑包,或者在每个 .lproj 文件夹中提供,如果您本地化您的启动图像.了解有关 iPhone 5 支持和应用程序启动图像的更多信息通过查看iOS 人机界面指南"'

解决方案

我们遇到了同样的问题,尝试了很多解决方案都没有解决,我们认为这是App提交的一种错误.但是我们找到了一种解决方法,可以保持启动图像本地化并通过提交验证.

环境:

Xcode 6.1 (6A1052c) 与 iOS 8.1 SDK

前提:

在您的*-info.plist"文件中有以下属性.

步骤:

  1. 转到目标设置和我们的标准场景(本地化启动图像,它在*-info.plist"中使用UILaunchImages"但不使用图像资产),它应该看起来像图像

  2. 更改设置以使用图像资产(注意:在此步骤之后,Xcode 将自动删除 *-info.plist 文件中的UILaunchImages"属性.因此请先备份属性.)

  3. 转到LaunchImage"资产(可以单击右侧的箭头按钮)并填充来自您的 *.lproj 文件夹之一的图像.

  4. 现在,转到包含图像和Contents.json"文件的LaunchImage"文件夹.

  5. 删除刚刚添加的所有启动图像,但保留Contents.json"(及其内容)文件.

  6. 检查Contents.json",它应该包含如下图所示的属性

仔细检查以下项目:

  • 资源文件夹(en.lproj、ja.lproj 等)中的本地化启动图像

  • *-info.plist 包含UILaunchImages"属性

  • 项目设置使用图像资源作为启动图像

  • LaunchImage"资产文件夹中的Contents.json",文件夹没有真的有启动图像

现在您可以尝试本地化启动图像并将二进制文件提交到 iTunes Connect.在我们的应用中,该解决方法确实适用于本地化启动图像"和提交成功".

应该是避免提交检查错误的技巧.

由于上述解决方法不会改变任何资源,除了让检查认为我们使用图像资产之外,我们更确信 Apple 的检查存在一些错误.

干杯!

I am getting this email after upload my binary with Xcode Version 6.0.1 (6A317)

Your binary is not optimized for iPhone 5 - - New iPhone apps and app updates submitted must support the 4-inch display on iPhone 5 and must include a launch image referenced in the Info.plist under UILaunchImages with a UILaunchImageSize value set to {320, 568}. Launch images must be PNG files and located at the top-level of your bundle, or provided within each .lproj folder if you localize your launch images. Learn more about iPhone 5 support and app launch images by reviewing the 'iOS Human Interface Guidelines' at 'https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/IconsImages/IconsImages.html#//apple_ref/doc/uid/TP40006556-CH14-SW5' and the 'iOS App Programming Guide' at 'https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/App-RelatedResources/App-RelatedResources.html#//apple_ref/doc/uid/TP40007072-CH6-SW12'.

Here is my plist file:

Here is my Xcode tree:

Here is my bundle root tree:

Here is the only resource I could find on this issue but it remains unanswered (3 days old)... https://devforums.apple.com/message/1051948#1051948

解决方案

We faced the same issue and couldn't solve it after trying many solutions, we believe it's a kind of bug in App submission. But we found a workaround which can keep launch images localized and pass the submission verification.

Environment:

Xcode 6.1 (6A1052c) with iOS 8.1 SDK

Precondition:

Have following properties in your "*-info.plist" file.

Steps:

  1. Go to your target's settings and in our standard scenario (localize launch images, which uses "UILaunchImages" in "*-info.plist" but not image assets), it should look like the image

  2. Change the setting to use image assets (Note: after this step, Xcode will automatically REMOVE the "UILaunchImages" properties in your *-info.plist file. So please BACKUP the properties first.)

  3. Go to the "LaunchImage" assets (can click the arrow button on the right) and fill with images from one of your *.lproj folder.

  4. Now, go to the "LaunchImage" folder which contains images and "Contents.json" file.

  5. Remove ALL the launch IMAGES just added, but keep the "Contents.json" (and it's content) file.

  6. Check the "Contents.json", it should contains properties like image below

Double check following items:

  • Localized launch images in resource folders (en.lproj, ja.lproj, etc.)

  • *-info.plist contains "UILaunchImages" properties

  • Project setting uses image asset for launch images

  • "Contents.json" in "LaunchImage" asset folder, and the folder DOES NOT really have launch images

Now you can have a try for localized launch images and submit the binary to iTunes Connect. In our App, the workaround did work for "localized launch images" and "submission successful".

It should be a trick for avoiding the bug in submission checking.

Since the workaround above doesn't change any resource, except making the checking thinks we use image assets, we are more convinced that there are some bugs in Apple's checking.

Cheers!

这篇关于“您的二进制文件未针对 iPhone 5 进行优化"在我使用 xcode 6.0.1 上传应用程序后的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆