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

IosIphoneXcode6

Ios Problem Overview


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

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.

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 Solutions


Solution 1 - Ios

Update August 2016

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

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


Original October 2015 Answer

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

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

I had to add the UILaunchImages key to my Info.plist:

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

Info.plist As described here: iOS Key UILaunchImages

Solution 2 - Ios

  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.

Solution 3 - Ios

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.xib which is alternative to using splash images.

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."

But even after using XIB i got this error.

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.

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.

Solution 4 - Ios

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

enter image description here

Solution 5 - Ios

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.

Solution 6 - Ios

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.

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.

enter image description here

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

Solution 7 - Ios

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

Remove the laucnh Screen File: Remove name.

Solution 8 - Ios

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

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

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.

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

Thanks.

Solution 9 - Ios

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

<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>

Solution 10 - Ios

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.

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

Then back to XCODE 7.0.1 and all seems good.

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

Solution 11 - Ios

I've encountered such problem in my project.

  1. The problem was using LaunchScreen.Xib without removing the LaunchImages in Images.assets. After delete LaunchImages from Images.assets, uploading is successfully completed.
  2. Please set Deployment Target into over 8.0 If you want to deploy 7.0 too, you have to add launchimages.

Solution 12 - Ios

Similarly to @Sanghoon, when I got this problem it was due to to targeted versions of iOS for which no iPhone Portrait launch image was specified (though it worked fine in XCode 6)

I'm not fond of placing all the launch images in the root folder, image catalogs work more elegantly and you don't have to name the files according to the @2x @3x convention since the image catalog takes care of it.

My full answer here: https://stackoverflow.com/a/34792891/1014983

Solution 13 - Ios

If you only support iOS9+ you have to add a LaunchScreen.storyboard (without ViewController) enter image description here

And reference it in your Target

enter image description here

Solution 14 - Ios

Just resolved the issue by correcting my Launch screen images. Make sure you have png files as image files.

I had "jpeg" images and converted it directly to ".png" just by changing the name. This was the issue. Used converter application to change the images, and everything worked perfect.

Solution 15 - Ios

One more thing to check... your image size must be correct. I had a splash screen image named logo_640x1136.png provided by a designer, and I couldn't figure out why I kept getting this error. Finally I checked the image with file (command line). Turns out the image wasn't actually 640x1136. If you don't like the command line, select the image in Finder and press Cmd+I to see the image size under "more info".

Solution 16 - Ios

I know this doesn't directly answer this question, but for others hopefully this helps: I fixed this by just building for a higher version. In tiapp.xml I added <min-ios-ver>8.0</min-ios-ver> directly under the <ios> tag.

Solution 17 - Ios

I'm using LaunchScreen and encountered same problem.

Deleting LaunchImage from Assets.xcassets solved issue for me.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionPawanView Question on Stackoverflow
Solution 1 - IosDanpeView Answer on Stackoverflow
Solution 2 - Iosuser821127View Answer on Stackoverflow
Solution 3 - IosAditya DeshmaneView Answer on Stackoverflow
Solution 4 - IosEsqarrouthView Answer on Stackoverflow
Solution 5 - IosAri GView Answer on Stackoverflow
Solution 6 - IosSanView Answer on Stackoverflow
Solution 7 - IosPriyank GujaratiView Answer on Stackoverflow
Solution 8 - IosAnkit PrajapatiView Answer on Stackoverflow
Solution 9 - IosliruqiView Answer on Stackoverflow
Solution 10 - Iosort11View Answer on Stackoverflow
Solution 11 - IosKen W.View Answer on Stackoverflow
Solution 12 - IosMatthys Du ToitView Answer on Stackoverflow
Solution 13 - IosFernando García CorrochanoView Answer on Stackoverflow
Solution 14 - IosAnkitaView Answer on Stackoverflow
Solution 15 - IosJason ClarkView Answer on Stackoverflow
Solution 16 - IosSenica GonzalezView Answer on Stackoverflow
Solution 17 - IosBabacView Answer on Stackoverflow