Copy link to clipboard
Copied
Today we're pleased to announce that the next version of AIR is available for immediate download. This release of AIR provides an update to the captive Flash Player plugin included with the SDK and runtime.
Below are some of the key features and benefits of AIR 22. Please see our release notes for full details.
New Features:
To address recommendations from Google and to keep pace with OS future developments, we've made significant changes in the way we use video codecs for decoding on AIR Android. There is no impact on functionality or performance for an AS developer. However, if you encounter issues with your AIR Android application, please report them to us at https://bugbase.adobe.com.
From AIR 22 onwards, we have introduced HiDPI support for AIR Desktop on Windows, where we will be providing higher quality rendering for AIR contents on HiDPI displays. The feature will work on the concept of higher pixel density scaling instead of pixel-doubling scaling. The feature is already provided for AIR on Mac Retina displays.
To implement the above feature in your AIR application, set requestedDisplayResolution to “high” in your application's descriptor file.
<requestedDisplayResolution>high</requestedDisplayResolution>
stage.contentsScaleFactor
AIR content scales according to the value of stage.contentsScaleFactor. Where, the value of stage.contentsScaleFactor would be calculated as stage.contentsScaleFactor = Current DPI / DPI at 100% (The DPI at 100% for Windows is 96 by default)
However, some of the content on Windows would scale only after the user signs-off and then signs-in again, as prompted by the OS. In the case where an extended screen is connected, the AIR app would adjust according to the DPI level of the particular screen, where each screen can have its independent DPI level. High quality renderings will cover the Stage3D content, vector assets and text, whereas high-resolution bitmap assets will have to be provided by the developer.
The Stage3D back buffer needs to be configured to the high resolution back buffer which can be done by calling Context3D.configureBackBuffer with the wantsBestResolution parameter set to 'true'.
The number of Screen pixels for the content will be ActionScript side Flash Pixels * Contents Scale Factor * Contents Scale Factor
Anti-Aliasing is useful in improving perceived image quality in applications. Hardware base Multisampling Anti-Aliasing (MSAA) is now available for both Mobile Platforms i.e. iOS and Android using Contex3D.setRenderToTexture API.
This feature was previously available for Desktop and Flash Player.
To enable MSAA set the level from 0 to 2 using the Context3D.setRenderToTexture.
The following are the effect of levels of antialiasing values:
0=1 subsample, No antialiasing
1=2 subsamples, medium antialiasing
2=4 subsamples, high antialiasing.
If you provide a higher level of antialiasing (more than 2) the level will be clipped to either the maximum level of antialiasing supported by GPU or 2.
Note: This feature is currently not available in configureBackbuffer.
API Assumptions and Dependencies
1) Anti-Aliasing is not available in software mode rendering.
2) Extra GPU memory will be used by the App using Anti-aliasing and hence can cause slight performance degradation.
Starting with AIR 22, AIR developers will now have access to Echo Cancellation with AIR iOS applications. Acoustic echo occurs when speaker output feeds back to the built-in microphone input producing disturbing echoing artifacts and significantly reducing the quality of captured data. Typical acoustic echo arises with collaboration applications, where two or more parties carry out interactive conversation. With AIR 22 and onwards, developers will be able to create VOIP applications without any echo using AIR on iOS.
This feature is already present on AIR for desktop. To get access to the device Microphone, we typically use Microphone.getMicrophone(), but this API returns a simple microphone, which does not have the ability to eliminate acoustic echo. In order to remove acoustic echo, we need to get an instance of the Microphone using the API: Microphone.getEnhancedMicrophone(). The device microphone returned by this API will have the acoustic echo cancellation feature enabled.
Please note that the application must be packaged with latest AIR SDK 22 or above and the swf-version should be 33 or above.
public function Microphone()
{
mic = Microphone.getEnhancedMicrophone();
mic.setLoopBack(true);
mic.addEventListener(StatusEvent.STATUS, mic_status);
}
Limitations: VOIP Applications will work only on RTMP. Performance of this feature will be varying depending upon the iOS version and the device type. The API MicrophoneEnhancedOptions will be a no-op on AIR for iOS.
With iOS 9, Apple introduced Multitasking enhancements for some iPad devices, please see details on following pages.
https://developer.apple.com/library/ios/releasenotes/General/WhatsNewIniOS/Articles/iOS9.html
We're happy to share that AIR 22 lets developers utilize these iOS enhancements (with the exception of Picure-In-Picture). Here are the technical guidelines to bring these functionalities to your iOS application on supported iPads.
Technical Guidelines
Application Descriptor Changes
Three new tags (multiasking, launchScreen, and assetsCar) in the application descriptor have been introduced.
<iPhone>
<multitasking>true</multitasking>
<launchScreen>LaunchScreen.storyboardc</launchScreen>
<assetsCar>Assets.car</assetsCar>
<InfoAdditions><![CDATA[
<key>UIDeviceFamily</key>
<array>
<string>1</string>
<string>2</string>
</array>
]]></InfoAdditions>
</iPhone>
The default value of the multitasking tag is false. We need to keep the value true for supporting multitasking. launchScreen and assetsCar represent the name of storyboardc and Asset.car file used respectively. The launchScreen file is mandatory but assetCar is optional.
Note: these files are also used to show the launch images for your app, hence you do not need to provide the launch images separately while packaging the IPA for iOS 8+ devices. For iOS 7 and below, you still need to package the launch images separately. As per Apple guidelines, to be able to support the multasking enhancements, your app needs to support all orientation states, that means following tags are mandatory.
<aspectRatio>any</aspectRatio>
<autoOrients>true</autoOrients>
Creating Assets.car and storyboardc files
To create Assets.car File and storyboard.c files used in your multitasking application, an AS developer needs to have a Mac with Xcode 7.1 or above.
You can package the app with the extracted Assets.car and LaunchScreen.storyboardc as assets as the following ADT command. Appropriate resize events are dispatched on runtime for various app states, AS Developers can handle them on runtime.
<path to adt> -package -target ipa-app-store -provisioning-profile <.mobileprovision> -keystore <.p12> -storetype pkcs12 -storepass <password> <.ipa> <.xml> <.swf> LaunchScreen.storyboardc Assets.car
AIR Applications built using AIR 21 or below may not run properly on Google's latest Android N preview build and can encounter following error (see below). We've fixed this issue with AIR 22 and developers are encouraged to upgrade to the AIR SDK 22 to comply with Android's new restrictions.
Detected problems with app native libraries (please consult log for detail):
libCore.so: unauthorized access to 'libstagefright.so'
libCore.so: unauthorized access to 'libutils.so'
libCore.so: unauthorized access to 'libui.so'
Starting in AIR 22, applications that play swf content via the HTML control (WebKit) will now load the system level NPAPI Flash Player provided by Adobe (https://get.adobe.com/flashplayer). If this plugin is not available on the system, the end user will be prompted to download and install the plugin from Adobe.
Fixed Issues:
Download Locations:
AIR runtime for Windows: 22.0.0.153 Runtime Download
AIR runtime for Macintosh: 22.0.0.153 Runtime Download
AIR SDK & Compiler for Windows: 22.0.0.153 SDK & Compiler Download
AIR SDK & Compiler for Macintosh: 22.0.0.153 SDK & Compiler Download
Note: To provide all the all the necessary tools for our developers in one place and avoid having to download multiple components, we are packaging Adobe AIR 22 SDK and ActionScript Compiler 2.0 in a single SDK called “Adobe AIR 20 SDK & Compiler”.
AIR SDK (Compatible with Flex) for Windows: 22.0.0.153 SDK Windows Download
AIR SDK (Compatible with Flex) for Macintosh: 22.0.0.153 SDK Macintosh Download
Previous versions of the AIR runtime and SDK can be found on the Archived AIR SDK and Runtimes page