I’m using Flash Builder 4.6 to make an iOS app.. It’s going fairly well, the app behaves as expected on the 3GS and the iPad. However, on the 4 it just uses the 3GS resolution and pixel doubles it. This would be fine, but there’s a few components on the main app screen that do their own scaling, and the post-processing the phone is applying is causing them to look very bad.
Now, from what I’ve read this should be really simple, in the *-App.xml, this is what I currently have for the iPhone:
<iPhone>
<Entitlements>
<![CDATA[
<key>get-task-allow</key>
<false/>
]]>
</Entitlements>
<InfoAdditions><![CDATA[
<key>UIDeviceFamily</key>
<array>
<string>1</string>
<string>2</string>
</array>
<key>UIApplicationExitsOnSuspend</key>
<true/>
]]></InfoAdditions>
<requestedDisplayResolution>high</requestedDisplayResolution>
</iPhone>
As you can see, I’m asking very nicely for high res, but not getting it.
Any ideas what I might be doing wrong here? I don’t have a lot of control over low level stuff like this in Flash Builder, but this should work. Any troubleshooting tips are much appreciated.
Found the problem, and the solution. It’s really dumb.
Even though I was requesting high resolution in the proper manner, Flash Builder was ignoring it, because the applicationDPI was 160. Even though this should be no problem, and it should handle it.
The solution was simply to set the applicationDPI to 320, and bam – 4S suddenly uses high resolution. Of course, I had to go through and double the size of all of my UI elements.
The 3GS and iPad still work properly as well. This is a really dumb Adobe bug, as far as I’m concerned.