Your binary is not optimized for iPhone 5 - (ERROR ITMS-90096) - ios

I get this error when trying to archive my application:
I don't understand, because I am not using LaunchImage in my application.
My settings looks like this:
Any suggestions on what I can do here?

It's because your Deployment Target is set to iOS 7.0.
A Launch Screen File is only supported for iOS 8.0 and later.
In order to support iOS 7 you must provide launch images. You can keep the Launch Screen file too but it will only be used on devices running iOS 8.0 and later.
So setup the asset catalog for the Launch Images Source and add the needed set of launch images for iOS 7.
Of course your other option is to drop support for iOS 7 then your use of the Launch Screen File will be sufficient.

Related

Unable to get rid of "An iPhone Retina (4-inch) launch image for iOS 7.0 and later is required" error

I'm designing an iOS app and am trying to add launch screens. Although I'm only supporting iOS 9.0 and later, I've added launch screen for iOS 6.0 and later. Despite this, for some reason I'm still getting the following error:
"An iPhone Retina (4-inch) launch image for iOS 7.0 and later is required"
When the add the pictures and save, the error temporarily goes away. But when I run the app on any device (through Simulator), the error comes back. Also, no launch screen shows.
YES, I know there are several threads on Stackoverflow (examples given at the end) mentioning this error. I've looked through them and the don't help me because they were either for an older version of Xcode, or the problem wasn't exactly as the one I have.
I am using Xcode 7.3.1 with Swift 2.2
Examples of other threads with similar issues:
XCode iOS7 Asset Catalog Warning - Only Supporting iOS8
How do I clear a warning for xcassets unassigned children?
Adding iOS 7 version of iPhone 4-inch launch image to project breaks launch image when run on iOS 7
"Missing retina 4-inch launch image" error, but I I have that image
Missing Retina 4 launch image. How to ignore this error?
You have selected the configuration for the "Universal" devices but not added any image for iPhone for iOS 7 and later.
You can do this two things to get rid of this error:-
If you are aiming to deploy the app for iOS 8 and / or iOS 9 and later, just select the iOS 8 and later in the properties of "Brand Assets-2". By this you can solve this error.
If you want to keep this app for iOS 7, then just select the "Portrait" mode in iOS 7 and later and insert image into it.
By this two ways you can get rid off to your error.
Happy Coding!
I would highly recommend switching to a Launch Screen storyboard. Correct me if I'm wrong, but I think this was make available in Xcode 6.

Xcode project warning with retina 4-inch Support

My Deployment Target = 7.0
I would put an image if i could but the warning deals with "deployment Target" with in the "xcodeproj" it reads
"Retina 4-inch Support
Applications using Launch Screen Files and
targeting IOS 7.1 and earlier need to also
include a Launch Image in an Asset Catalog."
My questions
What is this warning and do I have to worry about it?
What Deployment Target would be best (this is my first app)?
Warning: You must be using a LaunchImage in your app to show a "splash screen" reference.
That is the "old" way of doing it, the "new" way is to include these images under LaunchImage in Images.xcassets. The warning is just saying that if you include the old style launch images, then you should also include the images in the Asset Catalogue.
It won't stop you app running - it's more of a guideline, but seeing as you're learning, it's a good habit to get into.
As for deployment targets, it depends if you want to use iOS 8 only code, if not then iOS 7 is a good baseline...

storyboard launchimage when supporting iOS7 & iOS8

I'm creating an app that supports iOS8 and iOS7.
iOS8 supports to use Storyboards as launchimage...
But this doesn't work for iOS7.
But if I'm using Launch Images from the image.xcassets the launch image isn't loaded any more!
Is it possible to use storyboard-launch images for iOS8 and launch image from the Assets for iOS7?
Thanks in advance!
Edit:
As soon as I'm using both, iOS8 LaunchScreens is black!
For Device using iOS 7 you can do as usual, what we used to do using images.xcassets
For iOS 8 devices you have two ways..
Simply you can use LaunchScreen.xib.
this image show how Xcode by defaults sets LaunchScreen.xib for iOS 8 launch screen file.
If you don't want to set LaunchScreen.xib as launch screen file and want to display some launch image as you want in iOS 7 device, so just remove launch screen file name and make it blank(see below image) and delete LaunchScreen.xib file from Xcode. In this case iOS 8 device also takes launch image from launch images from images.xcassets.
Reference : Suryakant Sharma
This is quite a common problem, which happens when we build a new application with xCode 6.2 (and later), and set the deployment target to iOS 7. The lack of LaunchImage causes the app to run in 3.5-inch mode on iOS7 device.
If you specify both LaunchScreen and LaunchImages, the app runs fine on both iOS7 and iOS8.

Launch Image Xcode 6 iOS 7 warning

In my iOS project i have put iOS 7.1 as Deployment Target, but know i have this warning:
Applications using Launch Screen Files and targeting iOS 7.1 and earlier need
to also include a Launch Image in an Asset Catalog.
i have add in the images.xcassets the LaunchImage Folder, and i have add the Launch Image for the 4-inch screen, but i still have the warning, how i can do to solve it?
thanks
EDIT: this is the target setting:
You have not set the launch Images Source so iOS 7 has now idea where to get the images from.
Set this to asset catalog where you have added the launch screens, iOS 8 will use the Launch Screen File if both are set.

Binary is not optimized error for iPhone 5 - in Xcode6 with LaunchScreen.xib

I have an Xcode 6 project that I can't upload, because I'm getting the
Your binary is not optimized for iPhone 5 error New iPhone apps and app updates submitted must support the 4-inch display on iPhone 5 and must include a launch image..
It's inconceivable why this happens, because I have a proper LaunchScreen.xib which should solve the launch image problem. The project is a native Xcode 6 project, I didn't migrated anything from Xcode 5, therefore I have no idea what could be the problem. Do anybody had the same problem? I checked the other related questions, but that issues happened with Xcode 5 projects.
If your Deployment Target is set to iOS 7.1 or earlier then you still need the old style launch images. The launch screen file is only for iOS 8.

Resources