Screenshots and new iPhone size compatibility

The info is not in iTunes Connect. You’ll have to go to your app’s download page in the App Store and look under the description (where you see seller name, version info etc).

However I’d assume that this info is only available after you release it…not sure though.

I released an app perfectly formatted for the 6 and 6 plus using UILaunchImages, and it only says optimized for the iPhone 5 :confused:

I assume you also uploaded screenshots for the iPhone 6 and iPhone 6 Plus in iTunes Connect?

Yeah, screenshots for all devices and an app preview video for iPhone 6.

It’s going to be interesting to see how my remaining app that only uses UILaunchImages will be classified. It should be in review any day now. My working theory at the moment is that apps with only Xcode’s new Launch Screen File (a no UILaunchImages array) are regarded as optimized for iPhone 6 and iPhone 6 Plus. 

But I still think there must be some other way to get the App Store to classify the apps properly.

perhaps comparing the build.settings files would help to find the issue. I think at the moment nobody knows exactly what triggers the “Compatible with iPhone 5, iPhone 6 and iPhone 6 Plus” mode.

Oh man, that is disappointing. My app is approved, but I haven’t released it yet.  I assume it will be the same :frowning:

@toga

I have no build.settings file as I use Enterprise. However I do plan to compare the Info.plist in the app bundle generated by a Pro subscription build. However I await the approval of my remaining app that only uses UILaunchImages. If it isn’t classified as optimized for iPhone 6 / iPhone 6 Plus, then we can make a preliminary conclusion that UILaunchImages isn’t enough to trigger it.

One thing we do know for a fact: Having Xcode 6’s new Launch Screen File without UILaunchImages triggers the classification.

I found the confirmation at https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/LaunchImages.html#//apple_ref/doc/uid/TP40006556-CH22-SW1:

"If you also need to support earlier versions of iOS, you can continue to supply static launch images in addition to a launch file.

Important

You use a launch XIB or storyboard file to indicate that your app runs on iPhone 6 Plus or iPhone 6."

So Corona guys it is your turn :slight_smile: At the moment it is not possible to optimize for the iPhone 6 without a change in corona sdk.

@toga

Good find! That confirms it then.

That’s why my apps with only a Launch Screen File is classified correctly.

It may be possible for CoronaLabs to provide some way for us to specify this file in the build process. However that does mean we all will need to get acquainted with Xcode Interface Builder to design this file.

Or perhaps as a workaround  corona always creates (while creating the app file) a default (white or black)  launch XIB or storyboard file for the iPhone 6/Plus 

Not an acceptable solution for many, as the black/white Launch Screen File will override anything else for all iOS 8 devices (not just iPhone 6 / 6 Plus) meaning that you won’t be able to specify your own launch image at all.

Is LaunchScreen.nib (or .xib) an actual file that sits inside MyApp.app ; if built+compiled by XCode ? 

Would it be possible that we manually stuff one of these inside our Corona project folder, specify the plist in build.settings, and then let the SDK wrap it along the build and perhaps hoping iOS can pick it up?
 

Could this be a possible solution ?

Hi folks, a few things to report back here…

Looks like if we just “give” the app a .nib file, specify an extra key in build.settings, iOS8 launching will work !

Here’s what I did and have it to work  only in XCode Simulator , I got no actual iPhone6 devices to test this out, and ran out of time to plug in + test out my other physical devices.

  1. I created a LaunchScreen out of a fresh XCode 6 project. Build the project, find the .app file, locate the LaunchScreen.nib file and extracted it out of the .app bundle.

  2. In build.settings, add an extra key to the plist (no .nib extension):  UILaunchStoryboardName = "LaunchScreen"

  3. Place the  LaunchScreen.nib  file into a Corona project , build it (I built for XCode Simulator)

  4. Refer to this thread for placing the Corona-built app into your XCode 6 simulators. http://forums.coronalabs.com/topic/51430-build-2393a-ios8-iphone-66-launch-images-solved-w-xcode-6-ios-simulator-screenshots/

  5. Launch the app in simulator; you will see when if running under iOS 8 environment, the LaunchScreen.nib file will be used. (see White screenshot)

  6. If running in iOS 7, standard launch images will be pulled (see black screenshot)

  7. Annoyingly, XCode simulator basically just takes a screen-cap out of your launch screen package, and draws itself a png file and store it in the cache folder (wtf)

Your app in Simulator:

data/Containers/Bundle/Applications/XXXXX-XXXX-XXXX-XXXXX/YOUR_APP.app

Launch Image cache:

data/Containers/Data/Application/XXXXX-XXXX-XXXX-XXXXX/Library/Caches/LaunchImages/com.bundlename.appname/com.bundlename.appname/LaunchImage-Portrait{375,667}@2x.png

It’s fair to say having 1 launch image bundle is fine, but they (Apple) should still classify other apps as iPhone6/6+ compatible if devs are supplying compatible static launch images anyways…

Anyways, it’s not the end of the world yet, we can still squeeze in this content manually in our projects and at least triggering the LaunchScreen.nib file, which hopefully App Store will accept it and classify it as “iPhone 6 / iPhone 6 Plus Compatible”

I’m launching my app in a week’s time so I’ll report back using this method, see what happens. 

Happy Friday!

^ all of the above is done using the public build 2393a (I’m just a Basic Edition subscriber)

I’m checking with Engineering to see if there is something we can do for SDK subscribers to accomplish this.

Rob

I’ve written a post about this with a simple workflow here:

http://forums.coronalabs.com/topic/51801-how-to-activate-optimized-for-iphone-6-iphone-6-plus/

Thanks @ingemar.

Guys, just a dummy question: All this effort is just to have the “Optimized for iPhone 6/6+” to appear, right?  I.e, our apps already works fine on iPhone 6/6+, even with Lauch Images (if following Corona guide instructions), without problem. Am i correct?  (Because I tested here on my iPhone 6 and my apps are fine)

@Renato

Yes. As far as I know this is just another “hoop trick” to get Apple’s App Store to trigger the compatibility message.

…having said that. It *is* favorable to use a Launch Screen File in the sense that it replaces the need to use the UILaunchImages array entirely. You only need one xib file instead of having to create a bunch of static PNG files as before.

If you need iOS 6/7 compatibility you just supply your old launch images (PNG files) in the root directory as before in addition to the new Launch Screen File (no need for the UILaunchImages array).