• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
Locked
0

iPad Pro

Engaged ,
May 22, 2018 May 22, 2018

Copy link to clipboard

Copied

I am about to submit my first AIR apps to the app store this week.  Unfortunately, I never got a chance to test my app on an iPad Pro.  I have scaled all my fonts for the various screen resolutions, and all my page layouts are calculated based on screen size and resolution, so in theory it should work on an iPad Pro, but I have never had an opportunity to test it.  Do you think that it is safe to include iPad Pro on the App Store when I submit my app? Have any of you found any funny issues with delivering on iPad Pro that I should be aware of before I submit?

Thanks for any thoughts!

TOPICS
Development

Views

1.1K

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Advocate ,
May 23, 2018 May 23, 2018

Copy link to clipboard

Copied

No issues on my end with IPad pro, everything displays correctly with my resolution system.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Engaged ,
May 23, 2018 May 23, 2018

Copy link to clipboard

Copied

I appreciate your thoughts ASWC. Thanks for the feedback!

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
May 26, 2018 May 26, 2018

Copy link to clipboard

Copied

Hi

I just got an e-mail today from a user saying that my app doesn't run full screen on his iPad Pro 'with a big screen' ((12.9” 2732x2048 ?).

My app is running a resolution of 1024x768 pxiels.The app is automaticly scaled to double size (2048 x 1536) for iPad runs that resolution but I haven't tested the app on the largest ipad Pro.

The Stage.scaleMode was set to StageScaleMode.NO_SCALE in my app;

I think setting the scaleMode to 'SHOW_ALL' would do the trick?

Stage.align = StageAlign.TOP_LEFT;

Stage.scaleMode = StageScaleMode.SHOW_ALL;

Please let me know if anyone tried this or know how to get an app to scale to fullscreen!

Than you!

Rolf

// http://lagoona.e64.dk

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
May 26, 2018 May 26, 2018

Copy link to clipboard

Copied

All of my apps are either the default of showAll (meaning, if you don't set the scale mode, you get showAll) or noBorder. All of them work fine on iPad Pro.

If you do use noScale then you have the responsibility of doing whatever scaling is needed.

One thing though, I think that if you don't include the splash screens for iPad Pro, iOS should make a 2048x1536 app fill the screen. It's the presence of the splash screen that tells iOS that you're intending to support the higher resolution.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
May 26, 2018 May 26, 2018

Copy link to clipboard

Copied

Thanks Colin.

For some reason it’s already working on ipads running 2048 x 1536. I’ll try to set the Stage.scaleMode to StageScaleMode.SHOW_ALL..

I’ve already added splashscreens in Xcode for Landscape. 1xLandscape (1024x768) and 2xLandscape.(2048x1536) when creating the .car file. Shouldn’t that be sufficient?

Thanks a lot!

Rolf

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
May 26, 2018 May 26, 2018

Copy link to clipboard

Copied

Those are what you would need for iPad and iPad Retina. If you have also added a 2732x2048 splash screen, that's the one I'm thinking is causing the problem. Without that included the app should fill the iPad Pro screen. With it included you need to set your noScale stage to be 2732x2048, or use showAll and have AIR take care of it.

What was your original reason to use noScale? Do you have different layouts for different sized screens?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
May 26, 2018 May 26, 2018

Copy link to clipboard

Copied

I don’t have different layouts for different sized screens.

Actually the noScale was set in a setup class copied from another project – It wasn’t intentional.

So just setting the Stage.scaleMode = StageScaleMode.SHOW_ALL should work when I got the 2732x2048 splash image included, right?

Thanks again!

Rolf 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
May 26, 2018 May 26, 2018

Copy link to clipboard

Copied

I did a test where I used noScale, and tried it with and without the iPad Pro splash screen. Sure enough, if there was no splash screen the stage was apparently 2048x1536, and if there was a splash screen it was 2732x2048. So, the splash screen is used to deduce whether you're intending to support iPad Pro.

With showAll your stage will fill the screen, meaning that if you had a 1024x768 stage, it would show as 2048x1536 on regular iPad Retina devices, and also at that size on iPad Pro without the right splash screen. With the splash screen it will fill the 2732x2048 area. In both cases it will fill the whole iPad Pro screen, iOS takes care of that for you. That's how come all old iPad apps, even ones that were designed for 1024x768, will fill iPad Pro's screen. The only combination that will look bad is if you are doing noScale, you've included the splash screen, but your code logic is laying things out on the assumption that the screen is 2048x1536.

One consequence of showAll is that you need to worry about aspect ratios, like if you are planning on supporting Android devices, or even iPhone. The general strategy for solving that is to have a stage ratio that matches the widest device you want it to work on (for a landscape app), and a height that is based on the ratio of that device. For example, a 1024x576 stage will fill the iPhone 5, 6, 7, 8 screens exactly. To take care of iPad you would have additional background content above and below the stage, to a height of 768, in this example case. The extra content will get revealed on iPad.

Now, iPhone X has complicated things, and Android phones like the S8 are similarly wide. I am currently updating an app, and will want to support iPhone X. My stage is 1024x576, and I have content going out to 1024x768, which means that iPad through to iPhone 5 ratios work well. That's 4:3 through to 16:9. The S8 is 18.5:9, and iPhone X is 19.5:9. I am going to have to add extra content to the left and right of my stage as well, that will get revealed on iPhone X. As I've used a stage of 1024x576, I need to have content out to 1248x768 to cover the range of iPad to iPhone X. I'm actually going to do it to 1280x768, so I'll be ok even if a 20:9 device comes along.

I expect your head hurts by now!

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Advocate ,
May 26, 2018 May 26, 2018

Copy link to clipboard

Copied

I only do noScale because I have a density system that works on any screen and not only adjusts the size according to screen size and DPI but also switch resolution of graphics. Same system works equally on any Ios device or Android or desktop. If you develop without that type of system then showall is preferable.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
May 26, 2018 May 26, 2018

Copy link to clipboard

Copied

I'm often using vectors, and so those scale up ok. For bitmaps I will have the bitmap on stage at 50%, and the extra detail shows up ok on Retina. I know that means I'm using larger bitmaps than are needed on smaller screens, but it generally works ok. I also tend to just have 2048 wide images, so on iPad Pro the images are being scaled up a bit, but still look alright.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
May 28, 2018 May 28, 2018

Copy link to clipboard

Copied

Thank you for testing this and for sharing you thoughts about supporting different formats and resolutions! I think I'll use SHOW_ALL for now and worry about all the other formats when I decide to support iPhone and Android. I'm still a little confused about AIR automatically scaling to double size when using NO_SCALE.

Thanks again.

Rolf

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
May 28, 2018 May 28, 2018

Copy link to clipboard

Copied

It's iOS that does that. If you do a 1024x768 stage and you include no splash screen at all, iOS assumes it's an iPad 1 app, and it will scale the whole app up to either 2048x1536 or 2732x2048. If you include a 2048x1536 splash screen, iOS assumes you're supporting iPad Retina, and it will put your noScale 1024x768 in the middle of a 2048x1536 area (or top left, depends on the stageAlign you have used), and on iPad Pro it would then scale that 2048x1536 area up to 2732x2048. If you also include a 2732x2048 splash screen, iOS would put your 1024x768 stage in the middle of a  2732x2048 area on iPad Pro.

It could get quite confusing testing a noScale stage on different devices, if you haven't included the right splash screens!

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Engaged ,
May 28, 2018 May 28, 2018

Copy link to clipboard

Copied

So I am a little baffled.  I was able to get my hands on a 12.9" iPad Pro.  My app looks good on it, but I just wanted to make sure everything was optimal.  When I trace out the app width and height using the code below, I get 2048 x 1536.  I was expecting 2732 x 2048.  Is Adobe AIR not able to pull the correct resolution from an iPad Pro?  Anything else I should check to make sure the screen resolution gets calculated correctly??

stage.scaleMode = StageScaleMode.NO_SCALE;

appWidth = stage.stageWidth;

appHeight = stage.stageHeight;

trace(appWidth, appHeight);

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
May 28, 2018 May 28, 2018

Copy link to clipboard

Copied

You need three iPad landscape splash screens:

Default-Landscape~ipad.png

Default-Landscape@2x~ipad.png

Default-Landscape@2x.png

Default-Landscape~ipad.png is 1024x768, and supports non-Retina iPads, or Retina iPads if you have not requested the resolution to be "high".

Default-Landscape@2x~ipad.png is 2048x1536, and is for Retina iPads.

Default-Landscape@2x.png is 2732x2048, and is for iPad Pro.

If you don't have exactly those names, at those resolutions, you'll get the wrong results.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Engaged ,
May 28, 2018 May 28, 2018

Copy link to clipboard

Copied

Hmmmm.  I put in the splash screens with the exact names that you suggest at the resolutions you mentioned, and it still traces the dimensions of the iPad to be 2048 x 1536.

I have the requestedDisplayResolution set to high.

I wondered if perhaps the maximum dimensions that AIR plays on a tablet was 2048 x 1536 and I was just unaware of this.  I'm probably wrong.

Any other thoughts???

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Engaged ,
May 28, 2018 May 28, 2018

Copy link to clipboard

Copied

Could have possibly been because I did not clean the project, and the old splash screens, names, and resolutions were still in the output folder.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
May 28, 2018 May 28, 2018

Copy link to clipboard

Copied

LATEST

That's not a problem anymore with Animate, but if you're building with something else, deleting the app from the iPad first would clear out any cached splash screens.

I did do the test for noScale, and definitely got 2732x2048 when I had the right splash screen.

Make sure you don't have have any 2048x1536 Default-Landscape@2x.png files kicking around. That used to be the correct name and size, so you may still have a previous version's splash screen.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines