What to name the iPad Pro launch image?

Apple docs now state the iPad Pro 167px icon and corresponding 2048x2732 launch image as required in the docs.  News reports also stating the iPad Pro is launching on the 11th…

I’ve created a 167px icon and named it Icon-167.png as being an odd number doesn’t really work with @2x

What would the launch image be named?  

Thanks,

Nate

Hi Nate,

Unless something has changed in the past week since I searched, there is sparse details from Apple or otherwise as to what this image should be named. We just know it should be 167x167. As far as I know, Apple internally doesn’t care exactly what it’s named, except that it must be the correct dimensions and you must specify the name you choose for it within your build.settings.

We’re going to opt for “Icon-167.png”. I suggest you do the same.

https://docs.coronalabs.com/guide/distribution/buildSettings/index.html#appicons

Best regards,

Brent

Thanks Brent.   Last question I have is about the launch image…  I can make the 2048x2732 image but don’t know how to name it or what to put in the build.settings…

Other thread:  https://forums.coronalabs.com/topic/59959-what-to-name-the-ipad-pro-launch-image/

Hi Nate,

Unfortunately, I can’t find any specifics on this on either of the following pages:

https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/IconMatrix.html#//apple_ref/doc/uid/TP40006556-CH27-SW2

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

If you can find anything official, I would love to hear it. :slight_smile:

Brent

I haven’t found anything either unfortunately :frowning:    

How are the names of the current files in the UILaunchImages table assigned?  For example, I have this now:

UILaunchImages = { { --iPhone 4 Portrait ["UILaunchImageMinimumOSVersion"] = "7.0", ["UILaunchImageName"] = "Default", ["UILaunchImageOrientation"] = "Portrait", ["UILaunchImageSize"] = "{320, 480}" }, { --iPhone 5 Portrait ["UILaunchImageMinimumOSVersion"] = "7.0", ["UILaunchImageName"] = "Default-568h", ["UILaunchImageOrientation"] = "Portrait", ["UILaunchImageSize"] = "{320, 568}" }, { --iPhone 6 Portrait ["UILaunchImageMinimumOSVersion"] = "8.0", ["UILaunchImageName"] = "Default-667h", ["UILaunchImageOrientation"] = "Portrait", ["UILaunchImageSize"] = "{375, 667}" }, { --iPhone 6 Plus Portrait ["UILaunchImageMinimumOSVersion"] = "8.0", ["UILaunchImageName"] = "Default-736h", ["UILaunchImageOrientation"] = "Portrait", ["UILaunchImageSize"] = "{414, 736}" }, { -- iPad Portrait ["UILaunchImageMinimumOSVersion"] = "7.0", ["UILaunchImageName"] = "Default-Portrait", ["UILaunchImageOrientation"] = "Portrait", ["UILaunchImageSize"] = "{768, 1024}" } },

How are “Default” and “Default-568” designated?  Are these names specified by Apple, or are they just standardized/common names we use within Corona?  

Looks like the UILaunchImageSize table specifies the base 1x dimensions, and then the @2x or @3x are applied to the actual image filename to make that specific launch image appropriately sized…  

Technically, could we apply this same process to specify an iPad Pro image, such as the following?

{ -- iPad Pro Portrait ["UILaunchImageMinimumOSVersion"] = "8.0", ["UILaunchImageName"] = "Default-iPadPro-Portrait", ["UILaunchImageOrientation"] = "Portrait", ["UILaunchImageSize"] = "{1024, 1366}" }

Thus, we’d need two launch images:

  • Default-iPadPro-Portrait.png  (1024 x 1366)
  • Default-iPadPro-Portrait@2x.png (2048 x 2732 - this is what the iPad Pro would use)

I assume the naming of the image would be specified by whatever we want in “UILaunchImageName”…

From your vantage point, would this work?

Thanks,

Nate

Hi Nate,

In speaking with Rob on this topic, it seems more and more clear that Apple is steering people away from the traditional approach of including a bunch of static launch images in their projects. I encourage you to read the following tutorial and see how that goes for you.

https://coronalabs.com/blog/2014/10/21/tutorial-building-multi-screen-launch-images-using-xcode

Note that we originally published this around the time the original iPhone 6 line was released, so it may need some updating and clarification (as you know, Apple changes things constantly). Most likley, we will turn this into a more thorough guide soon, so if you notice anything outright incorrect or unclear, please let me know since that will ultimately result in a better guide for all Corona developers.

Brent

Any news on this yet whether we should use the launchScreen.nib or UILaunchImages?

Lastly, are the WxH sizes correct in your guidelines, as my app is landscape only so currently I only use the landscape .pngs and landscape orientations in UILaunchImages, but on iPhone6 the image is very squashed. My question is regarding the WxH indicated in your guide for Default-Landscape-667h@2x.png as well as the other landscape image sizes. The guide indicates that image should be 1334(W)x750(H) but I’m thinking since my splash image is so squashed it should actually be 750(W)x1334(H)?

Of course, if launchScreen.nib (based on your guide) is still fine (even for iPad pro) then the above question is irrelevant.

I’m going to work on trying to get to the bottom of this. It will probably be the weekend. I’ve heard reports you can’t make the nib files any more with Xcode 7.

Rob

Thanks Rob

I’ve not gotten to the .nib version yet, but I have the build.settings version figured out. You need two files to support the iPad Pro:

Default-Portrait-1366@2x.png  – 2048 x 2732

Default-Landscpe-1366@2x.png – 2732 x 2048

Add these three block to the UILaunchImages table:

                { -- iPad Pro Portrait                     ["UILaunchImageMinimumOSVersion"] = "9.0",                     ["UILaunchImageName"] = "Default-Portrait-1336",                     ["UILaunchImageOrientation"] = "Portrait",                     ["UILaunchImageSize"] = "{1024, 1366}"                 },                 { -- iPad Pro Landscape Right                     ["UILaunchImageMinimumOSVersion"] = "9.0",                     ["UILaunchImageName"] = "Default-Landscape-1336",                     ["UILaunchImageOrientation"] = "LandscapeRight",                     ["UILaunchImageSize"] = "{1024, 1366}"                 },                 { -- iPad Pro Landscape Left                     ["UILaunchImageMinimumOSVersion"] = "9.0",                     ["UILaunchImageName"] = "Default-Landscape-1336",                     ["UILaunchImageOrientation"] = "LandscapeLeft",                     ["UILaunchImageSize"] = "{1024, 1366}"                 },

If you want the whole table:

 UILaunchImages = { { --iPhone 4 Portait ["UILaunchImageMinimumOSVersion"] = "7.0", ["UILaunchImageName"] = "Default", ["UILaunchImageOrientation"] = "Portrait", ["UILaunchImageSize"] = "{320, 480}" }, { --iPhone 4 LandscapeLeft ["UILaunchImageMinimumOSVersion"] = "7.0", ["UILaunchImageName"] = "Default", ["UILaunchImageOrientation"] = "LandscapeLeft", ["UILaunchImageSize"] = "{320, 480}" }, { --iPhone 4 LandscapeRight ["UILaunchImageMinimumOSVersion"] = "7.0", ["UILaunchImageName"] = "Default", ["UILaunchImageOrientation"] = "LandscapeRight", ["UILaunchImageSize"] = "{320, 480}" }, { --iPhone 5 Portait ["UILaunchImageMinimumOSVersion"] = "7.0", ["UILaunchImageName"] = "Default-568h", ["UILaunchImageOrientation"] = "Portrait", ["UILaunchImageSize"] = "{320, 568}" }, { --iPhone 5 LandscapeLeft ["UILaunchImageMinimumOSVersion"] = "7.0", ["UILaunchImageName"] = "Default-568h", ["UILaunchImageOrientation"] = "LandscapeLeft", ["UILaunchImageSize"] = "{320, 568}" }, { --iPhone 5 LandscapeRight ["UILaunchImageMinimumOSVersion"] = "7.0", ["UILaunchImageName"] = "Default-568h", ["UILaunchImageOrientation"] = "LandscapeRight", ["UILaunchImageSize"] = "{320, 568}" }, { -- iPad / iPad Retina ["UILaunchImageMinimumOSVersion"] = "7.0", ["UILaunchImageName"] = "Default-Portrait", ["UILaunchImageOrientation"] = "Portrait", ["UILaunchImageSize"] = "{768, 1024}" }, { -- iPad / iPad Retina ["UILaunchImageMinimumOSVersion"] = "7.0", ["UILaunchImageName"] = "Default-Landscape", ["UILaunchImageOrientation"] = "LandscapeLeft", ["UILaunchImageSize"] = "{768, 1024}" }, { -- iPad / iPad Retina ["UILaunchImageMinimumOSVersion"] = "7.0", ["UILaunchImageName"] = "Default-Landscape", ["UILaunchImageOrientation"] = "LandscapeRight", ["UILaunchImageSize"] = "{768, 1024}" }, { --iPhone 6 Portrait ["UILaunchImageMinimumOSVersion"] = "8.0", ["UILaunchImageName"] = "Default-667h", ["UILaunchImageOrientation"] = "Portrait", ["UILaunchImageSize"] = "{375, 667}" }, { --iPhone 6 LandscapeLeft ["UILaunchImageMinimumOSVersion"] = "8.0", ["UILaunchImageName"] = "Default-667h", ["UILaunchImageOrientation"] = "LandscapeLeft", ["UILaunchImageSize"] = "{375, 667}" }, { --iPhone 6 LandscapeRight ["UILaunchImageMinimumOSVersion"] = "8.0", ["UILaunchImageName"] = "Default-667h", ["UILaunchImageOrientation"] = "LandscapeRight", ["UILaunchImageSize"] = "{375, 667}" }, { -- iPhone 6 Plus Portrait ["UILaunchImageMinimumOSVersion"] = "8.0", ["UILaunchImageName"] = "Default-736h", ["UILaunchImageOrientation"] = "Portrait", ["UILaunchImageSize"] = "{414, 736}" }, { -- iPhone 6 Plus landscape left ["UILaunchImageMinimumOSVersion"] = "8.0", ["UILaunchImageName"] = "Default-Landscape-736h", ["UILaunchImageOrientation"] = "LandscapeLeft", ["UILaunchImageSize"] = "{414, 736}" }, { -- iPhone 6 Plus landscape right ["UILaunchImageMinimumOSVersion"] = "8.0", ["UILaunchImageName"] = "Default-Landscape-736h", ["UILaunchImageOrientation"] = "LandscapeRight", ["UILaunchImageSize"] = "{414, 736}" }, { -- iPad Pro Portrait ["UILaunchImageMinimumOSVersion"] = "9.0", ["UILaunchImageName"] = "Default-Portrait-1336", ["UILaunchImageOrientation"] = "Portrait", ["UILaunchImageSize"] = "{1024, 1366}" }, { -- iPad Pro Landscape Right ["UILaunchImageMinimumOSVersion"] = "9.0", ["UILaunchImageName"] = "Default-Landscape-1336", ["UILaunchImageOrientation"] = "LandscapeRight", ["UILaunchImageSize"] = "{1024, 1366}" }, { -- iPad Pro Landscape Left ["UILaunchImageMinimumOSVersion"] = "9.0", ["UILaunchImageName"] = "Default-Landscape-1336", ["UILaunchImageOrientation"] = "LandscapeLeft", ["UILaunchImageSize"] = "{1024, 1366}" }, },

Rob

After reading some Stackoverlow posts, the .nib method seems to still work and is still the recommended way of doing launch images. And it may be required for multi-tasking support. Likely I need to update the tutorial for Xcode 7 moving things around a bit.

Rob

Hey Rob, just noticed your reply… thanks for looking into this!

Rob, thank you for that info.

Rob, what’s the multi-tasking issue that you mentioned?   

Regarding NIBs, a month ago I posted about issues I was having in XCode 7.  It was unable to create a new XIB file because Xcode was was using a .storyboard extension instead, which wasn’t allowing me to create a NIB.

The multi-tasking refers to the iPad Pro and IOS 9’s ability to have two apps on the screen at once. I heard somewhere that you need to have a .nib based launch image so the OS knows it can multi-task the app. I don’t have any more information than this. I’ve not looked in to it.

As far as .xib vs .storyboard, I suspect it may still work. Everything I read on it is that this still works in Xcode 7.1. But I’ve not had a chance to go try it myself.

Rob

Okay I decided to test this. I have a .xib file. See the screen shot.

I downloaded the project as listed in the steps in the tutorial.

Rob

Thanks Rob, I’ll take a look next time. I was only getting that LaunchScreen.storyboard but I must have missed a step. I wasn’t having this issue in older versions of XCode.

Are you downloading the Launch image project from the tutorial and using that? Or are you making your own project?

Rob

Rob I was making my own project from scratch.

That’s probably the problem then. I’m sure Xocde had chosen to name things .storyboard now. But that project was built when .xib was the file name.  There is probably a way to still get a .xib file. But even then, have you tried this:

ibtool --compile LaunchScreen.nib LaunchScreen.storyboard

instead of

ibtool --compile LaunchScreen.nib LaunchScreen.xib

to try and compile the .nib file?