I believe that the following will be needed:
- new placeholders in app xml for the new iPad retina icons
- a mode that will allow the content done in 'non-retina' iPad to be viewed on new IPad (like the tag that makes iPhone 4 to fill 4 pixels and be used as the iPhone 3)
- a simulator for all AIR environments, which allows the visualization of the iPad retina display (I guess it will have to have scrollbars for the first time in a mobile phone simulator, since the height is going to be 2048 pixels :-O )
- anything left on the list?
I would rather ask IF it will be supported at all in 2012... ![]()
From what we know by waiting for the iPhone4 I would say it takes about three month - at least. This time it should be pretty easy to enable this, since they know everything from the 3gd to iPhone4 switch, but I think that the team is mostly working on Android devices and iOS is something they are doing in their sparetime...
It is so sad that it seems like there is only a very small team working on this project at Adobe, though this could really be something special and good, but I switched to Xcode to ensure that projects don't rely on a totally wierd upgrade timetable (for example look at the problems with the languages and how long it takes to fix this for Adobe, or how long it took to use Game Center etc.). I know of a lot of developers who switched to Xcode and just work with Air before developing to make quick sketches, though even this might chance since the new Xcode features. I really like working with Flash, but it is getting harder and harder with each new iOS or device update since the Air updates are out of synch and much to slow for new (and often small) new features and the last updates were always incorporating new bugs. So it is tough to use then instandly.
Not encouraging ![]()
I am wondering: will we be able to develop / maintain iPad applications that are accepted by Apple even if we can't test them on a new-iPad-like simulator?
Let us face it: the iPad is THE best selling tablet; it is not "a" tablet like the Playbook or any Android.
It wouldn't make a lot of sense for Adobe to state they support AIR on iPad if the evolutions of such a device weren't faced promptly (XCode for new iPad is available from today).
I hope Adobe gives at suggests a date in which they can give the simulator and best practices for the new device...
josholm wrote:
It is so sad that it seems like there is only a very small team working on this project at Adobe, though this could really be something special and good, but I switched to Xcode to ensure that projects don't rely on a totally wierd upgrade timetable (for example look at the problems with the languages and how long it takes to fix this for Adobe, or how long it took to use Game Center etc.). I know of a lot of developers who switched to Xcode and just work with Air before developing to make quick sketches, though even this might chance since the new Xcode features. I really like working with Flash, but it is getting harder and harder with each new iOS or device update since the Air updates are out of synch and much to slow for new (and often small) new features and the last updates were always incorporating new bugs. So it is tough to use then instandly.
That's exactly how i see it.
I saw one of the promo videos for making ios apps months ago and thought; "Wow! That would be awesome, work with Flash wich i've done the past 12 years and make cool ios apps!".
About 2,5 months down the app-road enthousiasm has been replaced with discouragement...
You may not have noticed the large site that has been set up to promote Flash in general, and that also showcases Flash for mobile apps:
Also, a huge amount of improvements have happened within the last three months. I think people are still enthusiastic.
As for the general support for the "new iPad", you're already developing Flash things without owning one of these 4K monitors that someone might run your site on:
http://www.flatpanelshd.com/news.php?subaction=showfull&id=1308821283
You may be doing printing, and testing that on US Letter or A4, and not on the A0 paper that someone may be using. Same with a 2048x1536 mobile screen. Very few people have the ability to run a simulator of that doing Portrait, and you would need a 30 inch monitor to even simulate it doing Landscape.
So, you develop at iPhone or iPad 1 sizes, and trust Flash to do the scaling to the new size.
Now, there is an app descriptor quality setting, that can be Standard or High, it will be interesting to see if a noscale stage with quality=high gives you a 2048x1536 stage. Even if you don't set quality=high, the iPad will still automatically give you Retina quality for web views and device fonts.
Icons could be supported better, you can't currently even add an icon for Playbook, a change there to let you add any number of custom sizes would solve the Playbook and new iPad issue. You can edit the app descriptor file, but I don't know if that adds in the actual file, it may need you to use the command line to build the IPA. I haven't found time to test that yet.
I'll be able to say better how well Flash works with the new iPad on the 16th!
Colin,
I do agree that one of the qualities of Flash is its code and monitor independence. That's why I bought the FBuilder IDE.
However, we also know that some markets have stricter rules than others to let your (or your customer's) app in.
Not by chance, these markets are more profitable than the others (in a ratio of 10:1, if we compare profitability of Apple App Store to Android Market) and our customers do need us developers to give them precise timings about when and how we will be able to address the features that the market offers.
Some of those features are show-stoppers not only for customers, but for Apple itself. Will we be able to give Apple the icons that are necessary for the new device?
You mention trusting Flash being able to do the scaling (better: filling 4 pixels instead of one). Although this is a possibility, it is not to be given for granted. It works for iphone 3>>>4, but we need to know if it will work for iPad>>>New iPad? You mention the (likely) new icons... will we be able to insert them in the .ipa?
We need Adobe to feed us with information. I'm not saying they won't give the information in a timely fashion, but it is a good idea to remind them that we are in wait.
There are pre-release questions flying around about how to deal with the 144 pixel icons. If I see a reply from Adobe I'll let you know.
By the way, I don't think Flash does the filling in of the pixels, it doesn't know what a Retina display is. It asks the system to handle the app as high or standard quality, and the OS will then claim to be a 960x640 or 480x320 sized device, Flash then scales to that like it always would (if you're using the default scalemode).
Hi Colin,
I do agree with you in terms of the fact that it seems that the last three month have been a bit better when it's coming to updates of possible features. However, as I said am am sad about how the general concept is presented to us users. Well, one can say it is good that we are able to use the iOS export at all, but to be honest, we are customers and a lot of people are using Flash/Flex/Flashbuilder just because of the fact that they can do those exports and therefore it would be good if someone would take care of those people and business. To clearify, I am not saying that anyone of the people is not doing great work in providing the tools, to me it is just hard to see the general concept. I know that – for a while – the development was stopped, but that has been quite a while ago and Adobe is one of the largest software companies and I a wondering (not just in this case) why aren't they pushing those things much more. This could be also become a big business for them, IF the software works, IF updates are rolled out faster AND with a better control of whats beeing send to the users.
When I read that even Adobe deploys their apps with wrong language-lists I just think that something is simply wrong. I mean, could you be able to deliver your work like this? Nevertheless, let's see how long it take and how it will be deployed. Maybe the next update will be great. ![]()
Riccardo, you wouldn't need a preview player that has the original size in real pixels, if you install Xcode you can see that the iPhone 3 and iPhone4 simlator has the same size and since the pixels are just closer together but the physical device has the same size too – it just implies the look. Also you can deploy it to the device and see it by yourself if it works out.
If you're using Flash, it's a setting in the iOS settings, General tab. If you're using the command line, or Flash Builder I guess, then look for this in the app-descriptor xml file:
That setting would be 'high' if you want the Retina display to be used, or 'standard' if you want it not to use Retina resolution.
At least a couple of us will know on Friday whether that setting works for the new iPad like it does for the iPhone 4 and 4S.
Colin thanks for the prompt reply. But i can not see what to look for in the app descriptor file in your post. I downloaded the latest version of adobe air 3.2 release canditate but icould not find a section like this in the descriptor. Is this a prerelease feature?
I appreciate your help...
Hi Colin,
Thanks for sharing any experience you will have with the new iPad. In Italy it will come on the 27th but it will be impossible to get it before a couple of weeks' queue I'm afraid.
My opinions on how the "requestedDisplayResolution" could work in HD iPad:
In Flash Builder 4.6 standard, the "requestedDisplayResolution" tag works like so, with the iPhone:
- "high" requestedDisplayResolution tag allows us to address all new pixels as in iPhone 4 retina (you have a 960x640 screen you can use pixel by pixel)
- no "requestedDisplayResolution" tag makes the iPhone 4 screen equivalent to an iPhone 3Gs (you have a 480x320 screen). AIR "fills" the pixels automatically with a ratio of 4:1. One attention point is that the onscreen simulator shows the retina screen resolution even when the appdescriptor is missing: you see the 3g-like screen in the iPhone 4s only when app is sent to device.
I think that the same *could* work for iPad HD:
- "high" requestedDisplayResolution *could* allow the application to address all new pixels (you'd have a 2048x1536 screen to deal with)
- no requestedDisplayResolution tag *could* make the iPad retina screen equivalent to an iPad 2 (you'd have a 1024x768 screen to work with). AIR could "multiply" the pixels automatically with a ratio of 4:1
But will it?
Rabbitwindfall,
that's the spirit!
I'm optimistic, but my questions remains unanswered
![]()
1. Hopefully the high resolution feature works also on the new iPad?
2. And hopefully we're able to add the 144 px icon in the .ipa that we deliver to Apple?
@Alexus.one
your provisioning profile is waiting the for HD UDID
don't let us wait for too long if you can!
Adobe Air runs on iOS platform. If you can run it on iPad 1 with 5.0.1 you can ease run in on iPad3 )
Hight resolution must works because it's compilied for iOS, not for exact device ')
If you can't add file to build - you can ease add it using command line to ipa package using exact filename that use device. So u will get everything working. But Adobe for Flash CS5.5 don not provided updated Air2_5.dll but if they make it update - this will help using new features )
but ... currenlty I use command line that can compile anything
ok so i guess its 50/50 so far. stretching to big screen works fine but native resolution does not seam to be supported. Meaning i see pixilization on side of the image. if vector is used it should not be a problem (i guess)
for testing i used high res images from here: http://www.zastavki.com/eng/Motocycles/Harley_Davidson/wallpaper-12206 -18.htm just to give proper credit to who ever did the image
So for 1st test i used regualr ipad resolution 1024*768 i used HIGH res setings and placed 1280x800 photo obviously it got cut off, some side of the modules pixelazied but oveall model is ok no big digtortion
Next i inputed resolution to be 2048*1536, image now fully fits in, so i would expect it to be rendered nicely on large canvas yet i have same ordrder pixilization (ani alising needed i guess) I may be a bit picky but i consider interface by Apple to be perfect and our image that seams to be well rendering (externally) gets dissorted
Anyway here is snapshot
Now, lets play with bigger resolution image... i used 1920x1200 resolution source image and HD canvas. Got image to be displayed almost full screen but sides of the images are not that perfect again.
Now i figure that print screens may not shto artifacts of renderings so i took some photos
As you can see around (5) has sitortion even though there is no on original image. This is photo of last test in HD mode full screen large image.
Here is another one
So my conclusion so far, is that 1024*768 and 2048*1536 have sa,e result in both case there is some sort of stratching and smoothing applied by player. Logically higher resolution images should look better on "new ipad" but i did not see that in my test.
Maybe i did something wrong but taht what I have so far! Any comments ideas? Lets get this thing to have perefect output... maybe you have other test assets?
ok me again
i found betetr way to do testings
here it goes: snapshot of Apple Store and then we use that hanp shot as image for our app and snap shot of that ... see how quolity gets degraded. For example if you look at the Twitter bird shape, in original one it is crystal clear and in "remake" its pixilized on sides.
Aslo for any crazy reasonsnapshot of Apple store is 2Mb in size and snapshot of same image inserted in AIR app is 900kb WOW, seams like we really missing some pixels there ![]()
Any idea how to fix that quick without waiting on Adobe? For the record tjough, im usung Air 2.6
Do you use Flash CS5.5 for this or Flash Builder? Can I provide you my own project and will show results? That is simple test using your harley davidson image
And what version of Adobe Air do you use? 2.6 )))))
Latest it's 3.2 that have big step into the quality and the future of app development
Or let's say better - you iPad3 it's jailborked ? )
Uncool that images are clearly stretched when they should appear in all details...
May I ask what are the reasons you're sticking to 2.6?
I think the first thing that will come in the mind of Adobe people to fix this is that you use the latest player.
Thanks a lot for the info, it helps!
To avoid breaking apps that are not designed for the iPad's new retina display, apple only enable the full retina resolution on apps built with the iOS 5.1 SDK or later. So, to enable the higher resolution on your air app, you have to use this version of the SDK when compiling your app. You can only so this on a Mac with Air 3.1 or later. Use the -platformsdk compiler setting to point to the iOS 5.1 SDK and set the requestedDisplayResolution to high. Then you'll get the higher resolution.
I will overlay to 3.1 /3.2 SDK for windows and see results, if nothing good will do the same for mac.
To other posts, if you have your sample project then send me the file i will compile it
or compile file and give me provisioning profile
so we know you di it righ and dont relay on my curently 2.6 SDK system ![]()
and resolution was 2048*1536, and i use Flash 5.5
I've done some tests now and believe RichardLord has mapped a solution--but I'm curious the EXACT behavior. I can see using the current 3.1 out of the box (with CS5.5 or FlashBuilder) the 1024x768 is just stretching and certain pixel images can definitely look worse on iPad3 than iPad2--which is scaled at 1.0. For bitmap images the scaling with smoothing works fine. I guess my thought is some projects don't require you take full advantage of the new size. I'd like to know the answers to a couple concerns:
--if I wait at least until I have a mac to test on what is the EXACT behavior? Can you reliably grab the stage.stageWidth? Using the current tools it gives me 1024.
--I have projects where I'm recycling previously scaled graphics--as small as 800x600. I've been planning on scaling them myself using smoothing. I suppose if stage.stageWidth works as I expect it'll be easy.
I'm not ready to convert to mac but think I need to order at least a mac mini.
ok me back in here ![]()
I updated (overlayed AIR SDK to 3.1 v14 I hope? dont know how to confirm that but XML file changed) I seted HIGH settings for quolity and rebuild the test vector screen and still getting crappy results.
XML:
<iPhone>
<InfoAdditions>
<![CDATA[<key>UIDeviceFamily</key><array><string>2</string></array>]] >
</InfoAdditions>
<requestedDisplayResolution>high</requestedDisplayResolution>
</iPhone>
Canvas Size: 2048*1536
Can some one get something better?
I too have tried the high requestedDisplayResolution, latest AIR, -platformSDK linked to IOS 5.1, NO_SCALE setting, and high-res artwork, but it continues to resize my artwork as if I had a 1024x768 screen. And also, there is no support for the retina iPad icon (144px), although the retina iPhone icon (114px) seems to do pretty well.
phillipkerman - I only built the project I am currently working on. The difference when compiling against iOS 5.1 was distinct with vector graphics clearly rendered at a higher resolution than when compiling against iOS 5.0 or when running on an iPad2. I didn't have time to do more and the iPad is at work so can't investigate further today.
RichardLord; I'd like to hear your exact process as I will go try this week on a mac. For whatever reason acrowne doesn't seem to have it working--so maybe there are more details. Do you use the SWF directive like: [SWF(width="1024", height="768")]?
Also--and this is probably a different topic--but wouldn't you get the best performance if you took your vector graphics and make bitmaps (scaled properly for the target)? Maybe that's just not worth the pain--but I'd think it'd improve performance.
Yes, I think we're stuck on the icon sizes. Hopefully Adobe can come up with a patch soon. The fact RichardLord can make it work makes me believe it's possible for adobe to update the magic stuff that makes it possible to deliver in the first place.
I am double posting at this point to two discussions on Adobe Forums, so apologies to followers of both.
Reading Adobe's support materials, I gather that in the Native Extensions dialog, setting the Apple iOS SDK is the equivalent of setting -platformsdk. So I set that value to point to my copy of the iPhoneOS5.1.sdk. Below is my sample project code. In the application descriptor file, the only thing I changed from the default is my project id to match the provisioning profile and adding <requestedDisplayResolution>high</requestedDisplayResolution> to the iPhone xml tag. I tested this out on my iPhone 4 and it worked great. On the new iPad only the top corner of the image appears on the screen because of the scale. I am using AIR 3.1, so unless the 3.2 beta includes a fix, it seems that Adobe needs to produce an update before AIR supports the new iPad's display. Please tell me if you find anything I missed.
package
{
import flash.display.Sprite;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.display.Bitmap;
public class RetinaTest extends Sprite
{
[Embed(source="bgd@2x~ipad.png")]
private var bgdImg:Class;
private var bgd:Bitmap;
public function RetinaTest()
{
super();
// support autoOrients
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
bgd = new bgdImg();
addChild(bgd);
}
}
}
I confirmed my test this morning. Specifying the iOS 5.1. sdk in the platformsdk setting works. I wrote a blog post with details of the test - http://www.richardlord.net/blog/using-the-ipad-retina-display-with-ado be-air
acrowne - Don't know why yours doesn't work. All I can think is perhaps Flash Builder ignores the platform sdk if you don't have any native extensions that need it.
Thanks Richard, very good article.
Unfortunately, @acrowne's test shows that with Flash Builder things are not as easy.
However, this is very interesting.
As I said above, I initially used the public beta of Air 3.2 for this test. I reran the test using Air 3.1 and the results were the same, except building with iOS 5.1 gave the stageWidth as 1920px and stageHeight as 1280px. All other results were the same as for Air 3.2.
Apparently, we're not yet in a situation in which we can say that AIR is "device-independent" since a new device is described differently by two different versions of AIR.
"Apparently, we're not yet in a situation in which we can say that AIR is "device-independent" since a new device is described differently by two different versions of AIR."
Not exactly. The two different versions of Air describe the stageWidth and stageHeight differently for ALL devices. It seems to take Air a while to get the correct stageWidth and stageHeight. With Air 3.2 it's available after one frame, with Air 3.1 it takes longer (in the comments on my blog post, Richard Leggett says three frames is usually enough). And both versions give correct values for Capabilities.screenResolutionX/Y and for stage.fullScreenWidth/Height, which are the more reliable values.
The place where device independence does fail is that Capabilities.ScreenDPI is incorrect for the new iPad. I use this to adjust the size of user interface elements to be the same actual size on all displays. Because Air reports the wrong values for the new iPad, I have to treat this as a special case.
North America
Europe, Middle East and Africa
Asia Pacific