Codename One Simulator Screenshots of 6.5" iPhone for App Store Connect?

2.4k views Asked by At

My app is ready for release so I need to make the required screenshots for App Store Connect. I use the CN1 simulator to do that.

Today Apple requires 4 screen sizes if the app is for both iPhones and iPads:

  1. iPhone 6.5" 1284 x 2778
  2. iPhone 5.5" 1242 x 2208
  3. iPad Pro 3rd gen 12.9" 2048 x 2732
  4. iPad Pro 2nd gen 12.9" 2048 x 2732

For 3 & 4 the CN1 skin 'iPadPro' can be used (and I can upload identical screenshots if I understand correctly), for 2 the skin 'iPhone8Plus' can be used, but which skin can be used for 1, the iPhone 6.5"?

From help.apple.com:

For iPhone, screenshots for 6.5-inch iPhone Xs Max and 5.5-inch devices (iPhone 6s Plus, iPhone 7 Plus, iPhone 8 Plus) are required. These screenshots will scale down for smaller device sizes.

Screenshot specifications: 6.5 inch (iPhone 12 Pro Max, iPhone 11 Pro Max, iPhone 11, iPhone XS Max, iPhone XR), 1284 x 2778 pixels (portrait), Required if app runs on iPhone.

I don't see any appropriate skins in the CN1 skin download list. Is there one that can be used?

P.S. My app supports 8 languages and let's say I want to show 5 different screenshots, do I really have to provide 8 x 5 x 4 = 160 screenshots? How do other developers deal with this?

1

There are 1 answers

8
Shai Almog On

I suggest using one of the app screenshot generator companies like these to generate screenshots in the various resolutions for iOS/Android. There are many such companies you can search for, these are a few:

https://theapplaunchpad.com/

https://app-mockup.com/

https://www.appstorescreenshot.com/

https://launchkit.io/

https://play.google.com/store/apps/details?id=cn.gavinliu.snapmod&hl=en_US

This is the best approach as it will always work (even if a new phone comes out tomorrow or requirements change). Notice I'm not affiliated with any of these companies... I did use a few of them for our apps.

Making a skin isn't hard but isn't trivial either. I built a tool a while back that generates skins but it's unmaintained. I find it easier to just add a skin in the project directly here:

https://github.com/codenameone/codenameone-skins/tree/master/Phones/iPhoneX

See the iPhoneX skin. The main challenges here are:

  • Finding an image of the iPhone where the screen is actually in correct pixel proportions (this is surprisingly hard)

  • Then generating the images that represent the screen surface areas

  • Editing the properties file for correct font size, pixel density etc.

Then you can just add it to the bash script in the root/XML build and run the script to generate a skin file. Ideally also submit a PR to the project.

I'm not asking you to do that. I'm just not sure when we'll get around to this bug as there are many issues and tasks in queue and most people pick the first option for appstore submissions (or use physical device screenshots).