Skip to main content
March 30, 2013
Answered

Adapting ios app for different iPad resolutions?

  • March 30, 2013
  • 5 replies
  • 658 views

So I've built an app, in Flash Professional using AIR 3.6, for the iPad 3's 2048x1536 resolution. However, I would also like it to be available
for iPads 1+2 (if possible). How would I go about doign this? Would the app automatically downscale on those devices or would I need to create seperate packages for them?
Will this affect performance and quality?

I only own an iPad 3, so I am, at present, only able to test for that model.

Thank you to anyone that could help explain this for me.

This topic has been closed for replies.
Correct answer Colin Holgate

If you have done nothing special to the stage scale mode, then it will just work fine, without you doing anything.

One thing that may happen is that the iPad 1 may crash. If that happens you can solve the problem by having a second copy of your images at 1024x768, and use code to decide which of the two to show. Here is an example of how that might work, where in this case I have iPad 1 graphics on frame 2, and iPad 3 graphics on frame 3:

import flash.system.Capabilities;

var screenwidth:int = Math.max(Capabilities.screenResolutionX,Capabilities.screenResolutionY);

if(screenwidth<=1024){

gotoAndStop(2);

}else{

gotoAndStop(3);

}

You would need to decide what stage size you're working at, and have one set of images at either 200% or 50%. My preference is to work at 1024x768, and have the Retina graphics on the stage at 50%, and the non-Retina ones at 100%.

5 replies

Colin Holgate
Colin HolgateCorrect answer
Inspiring
March 30, 2013

If you have done nothing special to the stage scale mode, then it will just work fine, without you doing anything.

One thing that may happen is that the iPad 1 may crash. If that happens you can solve the problem by having a second copy of your images at 1024x768, and use code to decide which of the two to show. Here is an example of how that might work, where in this case I have iPad 1 graphics on frame 2, and iPad 3 graphics on frame 3:

import flash.system.Capabilities;

var screenwidth:int = Math.max(Capabilities.screenResolutionX,Capabilities.screenResolutionY);

if(screenwidth<=1024){

gotoAndStop(2);

}else{

gotoAndStop(3);

}

You would need to decide what stage size you're working at, and have one set of images at either 200% or 50%. My preference is to work at 1024x768, and have the Retina graphics on the stage at 50%, and the non-Retina ones at 100%.

March 30, 2013

Ok brilliant, this makes a lot of sense. So I can just make everything I have so far it's own movie clip and then have a duplicate version on another frame at 1024x768? Is there any reason they would need to be on frames 2 and 3 and not 1 and 2? The only other thing I am slightly confused about why you would chose the smaller stage size and reduce the retina-sized images down to 50%?

One more question I have air set to render using the GPU, because it suits my project best I have found. Will this affect how it runs on an iPad 1/2?

Thanks a lot

Colin Holgate
Inspiring
March 30, 2013

The project I'm doing is GPU too, and it does lead to iPad 1 crashing. I use frames 2 an 3 so that when the movieclip loads it doesn't briefly load the non-Retina graphic on Retina devices. But, you could work a different way, and have the entire experience be in Retina or non-Retina. It depends on the structure of your app as to what way is best.

As for using 1024x768 stage, it's easier to work that way on most monitors, and it doesn't make a difference to the quality on Retina screens. The original 2048x1536 bitmap shines through!