ios 提交时“您的二进制文件未针对 iPhone 5 进行优化”(ITMS-90096)

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/28830013/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-31 05:05:56  来源:igfitidea点击:

"Your binary is not optimized for iPhone 5" (ITMS-90096) when submitting

iosiphonexcode6

提问by Pawan

this is my first ios app and when i try to submit it to the app store it gives me the ITMS-90096 error.

这是我的第一个 ios 应用程序,当我尝试将它提交到应用程序商店时,它给了我 ITMS-90096 错误。

error screenshot

错误截图

I think i have already uploaded all the right icons and splash screen images. It says something about the launchimage for 4-inch display on iphone-5 but i have no idea where to add it.

我想我已经上传了所有正确的图标和启动画面图像。它说明了 iphone-5 上 4 英寸显示器的启动图像,但我不知道在哪里添加它。

here is my launch image source.

这是我的启动图像源。

launch image source

启动图像源

i am fairly new to ios development i have a small android background and the ios process of adding and submitting apps seems quite alien to me.

我是 ios 开发的新手,我有一个小的 android 背景,添加和提交应用程序的 ios 过程对我来说似乎很陌生。

采纳答案by Danpe

  1. Check all those images are .PNG
  2. Put those images at root level of your project
  3. Add another splash.png with name "[email protected]" for iPhone 5. Its size should be 640?×?1136 pixel.
  1. 检查所有这些图像都是 .PNG
  2. 将这些图像放在项目的根级别
  3. 为 iPhone 5 添加另一个名为“[email protected]”的 splash.png。其大小应为 640?×?1136 像素。

回答by Danpe

Update August 2016

2016 年 8 月更新

When using Xcode 7+and targeting iOS 8+it is recommended to remove the .xibfile and create a new LaunchScreen.storyboardby using the given template: Add Files...

当使用Xcode中7+和指定的iOS 8+建议删除的.xib文件,并创建一个新的LaunchScreen.storyboard使用指定的模板: 添加文件...

And than setting it in the Project File under App Icons and Launch Images: App Icons and Launch Images

而不是在App Icons 和 Launch Images下的 Project File 中设置它: 应用程序图标和启动图像



Original October 2015 Answer

2015 年 10 月的原始答案

So like @Aditya Deshmane I also use .xibfile as my "Launch Image".

所以和@Aditya Deshmane 一样,我也使用.xib文件作为我的“启动图像”。

Adding both Default-568.pngand [email protected]to my root directory didn't solve my issue.

Default-568.png和都添加[email protected]到我的根目录并没有解决我的问题。

I had to add the UILaunchImageskey to my Info.plist:

我必须将UILaunchImages密钥添加到我的Info.plist

<key>UILaunchImages</key>
<array>
    <dict>
        <key>UILaunchImageName</key>
        <string>Default-568</string>
        <key>UILaunchImageSize</key>
        <string>{320, 568}</string>
    </dict>
</array>

Info.plistAs described here: iOS Key UILaunchImages

信息表如此处所述:iOS Key UILaunchImages

回答by Aditya Deshmane

Question is already answered and works as well, just adding one more answer as i got similar error in different scenario.

问题已经回答并且也有效,只是添加了一个答案,因为我在不同的场景中遇到了类似的错误。

In my case i was using LaunchScreen.xibwhich is alternative to using splash images.

在我的情况下,我使用的LaunchScreen.xib是使用启动图像的替代方法。

https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/LaunchImages.html

https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/LaunchImages.html

As stated in above link "In iOS 8 and later, you can create a XIB or storyboard file instead of a static launch image."

如上述链接 “在 iOS 8 及更高版本中,您可以创建 XIB 或故事板文件而不是静态启动图像。”

But even after using XIB i got this error.

但即使在使用 XIB 之后,我也遇到了这个错误。

To solve this i took screenshot of splash from 4 inch device running iOS 8, which was 640?×?1136 pixel. Renamed it to "[email protected]" added it to top level in project bundle.

为了解决这个问题,我从运行 iOS 8 的 4 英寸设备上截取了启动画面,这是 640?×?1136 像素。将其重命名为“[email protected]”,将其添加到项目包的顶层。

Reason behind this error could be :

此错误背后的原因可能是:

When apple transitioned from 3.5 inch devices to 4.0 devices, this image was compulsory otherwise app used to run in letterbox mode ( On 4 inch devices you will see black bars on top and bottom of application ). So when i tried to run my application on 4 inch device/simulator running iOS 7.1 it was indeed running into letterbox mode ( when i only used .xib based splash ). The moment i added "[email protected]" letterbox mode gone plus apple approved app.

当苹果从 3.5 英寸设备过渡到 4.0 设备时,此图像是强制性的,否则应用程序将在信箱模式下运行(在 4 英寸设备上,您会在应用程序的顶部和底部看到黑条)。因此,当我尝试在运行 iOS 7.1 的 4 英寸设备/模拟器上运行我的应用程序时,它确实运行到了信箱模式(当我只使用基于 .xib 的 splash 时)。我添加“[email protected]”信箱模式的那一刻,加上苹果批准的应用程序。

回答by Esqarrouth

In my case, I don't use LaunchScreen file but had a value in there. Deleting it like this worked:

就我而言,我不使用 LaunchScreen 文件,但其中有一个值。像这样删除它有效:

enter image description here

在此处输入图片说明

回答by Ariel Gelbard

On Xcode 7 with iOS 9 SDK, if you set 'deployment target' to 8.0 or above, and don't have a asset catalog selected for 'launch images source', then it will work.

在带有 iOS 9 SDK 的 Xcode 7 上,如果您将“部署目标”设置为 8.0 或更高版本,并且没有为“启动图像源”选择资产目录,那么它将起作用。

回答by San

I also had a hard time to figure it out. It happened to me after I upgraded XCode into version 7 (iOS 9). Somehow it unassigned launch images and changed Launch Image options with unchecked iPhone Portrait for iOS 6.0 and Prior from the right pane.

我也很难弄清楚。在我将 XCode 升级到版本 7 (iOS 9) 后,这发生在我身上。不知何故,它取消了启动图像并更改了启动图像选项,未选中 iOS 6.0 的 iPhone 肖像和右窗格中的Prior。

enter image description here

在此处输入图片说明

After I checked iPhone Portrait it shows assignable iPhone Portrait iOS 5, 6. I just drag & drop images into the proper holders.

在我检查 iPhone Portrait 后,它显示了可分配的 iPhone Portrait iOS 5、6。我只是将图像拖放到适当的支架中。

enter image description here

在此处输入图片说明

Then I archived with this assignment and uploaded binary successfully into app store. I hope this would help.

然后我用这个作业存档并将二进制文件成功上传到应用商店。我希望这会有所帮助。

回答by Priyank Gujarati

Try to clear "Launch screen file" at "App icons and Launch images"

尝试清除“应用程序图标和启动图像”中的“启动屏幕文件”

Remove the laucnh Screen File: Remove name.

删除 laucnh 屏幕文件:删除名称。

回答by liruqi

From iOS9, you should add launch images to your project root, not Images.xcassetsfolder. And set your launch images in info.plistwith key UILaunchImages, for my example:

从 iOS9 开始,您应该将启动图像添加到您的项目根目录,而不是Images.xcassets文件夹。并info.plist使用 key设置您的启动图像,UILaunchImages例如:

<key>UILaunchImages</key>
<array>
    <dict>
        <key>UILaunchImageMinimumOSVersion</key>
        <string>7.1</string>
        <key>UILaunchImageName</key>
        <string>iPhone5Portrait</string>
    </dict>
    <dict>
        <key>UILaunchImageMinimumOSVersion</key>
        <string>7.1</string>
        <key>UILaunchImageName</key>
        <string>iPhone6Portrait</string>
    </dict>
</array>

回答by ort11

Using XCODE 7.0.1 with an app that did not have the launch images setup. Tried to use the interface to "create" the locations in the .xcassets file, but only created a set with a bad name.

将 XCODE 7.0.1 与没有启动图像设置的应用程序一起使用。尝试使用界面“创建” .xcassets 文件中的位置,但只创建了一个名称错误的集合。

Had to go back to XCODE 6.4 to create the proper locations / set name "LaunchImage" and load the files.

不得不回到 XCODE 6.4 来创建正确的位置/设置名称“LaunchImage”并加载文件。

Then back to XCODE 7.0.1 and all seems good.

然后回到 XCODE 7.0.1,一切似乎都很好。

Looks like there is a bug introduced in XCODE 7.x that will not create the launch image .xcassets correctly.

看起来在 XCODE 7.x 中引入了一个错误,它不会正确创建启动图像 .xcassets。

回答by Ankit Prajapati

This solution is only for Phonegap + DevExtreme + Visual Studio (Windows):

此解决方案仅适用于 Phonegap + DevExtreme + Visual Studio (Windows):

I struggled for 3 consecutive days to solve this issue. Hope somebody else not have to.

我连续3天努力解决这个问题。希望别人不必。

Please follow the below mentioned Steps to resolve the issue:

请按照下面提到的步骤来解决问题:

  1. Create a New Solution.
  2. Delete all the Files and Folders except the "congif.xml" and Solution File.
  3. Copy your existing Files and Folders to the New Solution. DONT COPY THE IMAGES which includes the ICONS AND SPLASH/LAUNCH IMAGES.
  4. In the New Solution, add all the Icons and Splash images from fresh.
  1. 创建一个新的解决方案。
  2. 删除除“congif.xml”和解决方案文件之外的所有文件和文件夹。
  3. 将您现有的文件和文件夹复制到新解决方案。不要复制包括图标和飞溅/启动图像的图像。
  4. 在新解决方案中,从新添加所有图标和飞溅图像。

Build this Solution with proper Distribution Certificate and submit the IPA to App Store. It must solve the "90096" Error.

使用适当的分发证书构建此解决方案并将 IPA 提交到 App Store。它必须解决“90096”错误。

Thanks.

谢谢。