0 Replies Latest reply: Jun 10, 2014 11:24 AM by chris.campbell RSS

    6/10/14 - Release - AIR 14 Runtime and SDK

    chris.campbell Adobe Employee

      Today we're pleased to announce that the next version of AIR is available for immediate download.

       

      This update includes the following fixes and security updates:

       

      Security update details can be found here: Security Bulletin (APSB14-14)


      New Features:

       

      • Anisotropic Filtering

      This new texture sampling filter can enhance the image quality of textures on surfaces that are at oblique viewing angles.  There are two ways to enable this feature:

        • In AGAL, set one of the values – "anisotropic2x", "anisotropic4x", "anisotropic8x", or "anisotropic16x" to the filter option in the sampling instructions.
        • Call Context3D::setSamplerStateAt with the 3rd parameter "filter" being one of the values defined in Context3DTextureFilter - "ANISOTROPIC2X", "ANISOTROPIC4X", "ANISOTROPIC8X", or "ANISOTROPIC16X"

       

      • New Stage3D "Standard" Profile

      Developers can now request this high level profile when creating Context3D.  Three new features are available in this profile:

        • Multiple render target allows to you to draw geometry to multiple outputs (up to 4) during one drawing
        • Floating point texture allows you to create Texture, RectangleTexture and CubeTuxture with the RGBA16F folder.
        • AGAL v2 contains these improvements:
          • Increased register size
          • Partial derivative instructions
          • Fragment depth output
          • Conditional forward jump

       

      • Intel x86 Android Support

      As announced in our Flash Runtime blog, we're adding support for Intel x86 Android to AIR.  An ADT command line option (-arch) has been added to allow packaging apps with Android x86 support.  Please note that currently only captive runtime packaging is allowed for x86 architecture.  This means all APK targets (apk, apk-debug and apk-captive-runtime) will forcibly be packaged with captive runtime.  Feedback on this approach is encouraged.

       

      Sample APK packaging command for x86 devices:

       

      adt -package -target ( apk | apk-captive-runtime ) -arch x86 -storetype pkcs12 -keystore abc.p12 HelloWorld.apk HelloWorld-app.xml HelloWorld.swf
      adt -package -target apk-debug -arch x86 -storetype pkcs12 -keystore abc.p12 HelloWorld.apk HelloWorld-app.xml HelloWorld.swf
      

       

      Note that -arch is optional. If not specified, armv7 is assumed.

       

      Packaging for x86 architecture in Flash Builder:

      Open the debug/run configurations of the project in Flash Builder and click on "Customize launch.." button. Add a new parameter "-arch" with value "x86" and place it before "-storetype". Click "OK" to apply changes.

      Except for RTMPE and DRM, all other features and capabilities are completely functional and supported. Native extensions written for x86 platforms can also be packaged and used by an app for x86 devices. To support this, a new ANE platform 'Android-x86' is now available.

      The following example highlights the usage of the same -

       

      <extension xmlns="http://ns.adobe.com/air/extension/14.0>
      <id>com.adobe.sample.ane</id>
      <versionNumber>1.0</versionNumber>
      <platforms>
      <platform name="Android-ARM">
      <applicationDeployment>
      <nativeLibrary>sample.jar</nativeLibrary>
      <initializer>com.example.ane.Extension</initializer>
      <finalizer>com.example.ane.Extension</finalizer>
      </applicationDeployment>
      </platform>
      <platform name="Android-x86">
      <applicationDeployment>
      <nativeLibrary>sample.jar</nativeLibrary>
      <initializer>com.example.ane.Extension</initializer>
      <finalizer>com.example.ane.Extension</finalizer>
      </applicationDeployment>
      </platform>
      </platforms>
      </extension>
      

       

      New packaging command for ANE:

       

      adt -package -target ane Sample.ane extension.xml -swc Sample.swc -platform Android-ARM -C Android-ARM/ . -platform Android-x86 -C Android-x86/ .
      


      • Improved Packaging Engine - iOS

      Based on the feedback received from the developer community, tons of improvements and bug fixes have been made in the new packaging engine for iOS.  We encourage developers to report issues to http://bugbase.adobe.com, to ensure that we are able to continue to improve the packager in future releases.

       

      To enable this feature, please use "-useLegacyAOT no" in the ADT command, before the signing options.  As of now, this feature is not available within Flash Pro but it can still be used with Flash builder by adding the parameter -useLegacyAOT under the "Customize launch" option.

       

      Here is an example ADT command for compiling an applications using “-useLegacyAOT no":

       

      adt -package -target ( ipa-test | ipa-debug | ipa-app-store | ipa-ad-hoc) -useLegacyAOT no -provisioning-profile -keystore -storetype pkcs12 -storepass xxxx HelloWorld.ipa Helloworld-app.xml HelloWorld.swf
      

       

      For more information, please visit Faster compiling with AIR for iOS

       

      • AIR Gamepad

      AIR Gamepad feature enables the app developers to provide a second screen on Android mobile devices for the Flash based browser games. AIR Gamepad API enables Flash based browser apps to connect to a paired Android device running the AIR Runtime app and therefore allowing the Android devices to be used as game controllers or second-screen interfaces.

       

      Key functionality of this feature:

        • Gesture eventsTouch events
        • Accelerometer events
        • Vibration
        • Customize the AIR gamepad screen by applying your own skins

       

      To learn more about the AIR Gamepad APIs, please refer to the documentation found here.

       

      To try out the Wand.swc which can be downloaded from here.

       

      Live samples of AIR Gamepad can be tested using the following links:

      For more information, please visit Android devices with AIR as gamepads



      Fixed Issues:

      • [IOS] Resolves an issue introduced in AIR 4.0.0.1390 where DatagramSocket was not receiving packets (3747382)
      • [IOS] Values are now set correctly when assigning Vector3D.Y_AXIS to a Vector3D object with -useLegacyAOT=no[Android] Browse file dialog called by FileReference.browse() is correctly displayed on the Nexus 7 and Xoom 4.1.2 (3721032)
      • [Android] is ignored for all but one extension when multiple extensions are used (3761458)
      • [x86][Android] Workers get terminated even without calling terminate function (3755006)
      • [Android] Setting the restrict property on a StageText instance and adding or removing text incorrectly add extra characters. (3749699)
      • [iOS] Values are now set correctly when assigning Vector3D.Y_AXIS to a Vector3D object with useLegacyAOT=no (3744595)
      • [iOS] ANE doesn't include libraries through platform.xml and throws error on packaging the IPA (3743946)
      • [iOS] DatagramSocket not receiving packets on iOS (3742982)
      • [iOS] Not able to debug/launch iPad iOS Simulator from Flash Builder. Note: One needs to set a environment variable using the command: launchctl setenv AIR_IOS_SIMULATOR_DEVICE "iPad Retina” Then restart the process and run the application on simulator device of his/her choice. By default iPhone is launched. (3728052)
      • [iOS] Not able to debug AIR app in iOS Simulator from Flash Builder when Xcode below 5.x is installed (3727760)
      • [iOS7] StageText fontWeight/fontPosture API does not work (3724627)
      • [Android] R$Styleable.class goes missing from the final AIR app APK though is included in ANE. (3723876)
      • [Android] Starling throws Buffer creation failed. Internal error while createVertexBuffer (3756123)
      • [Win] Ctrl+A, Ctrl+C and Ctrl+V now work correctly in StageText fields (3708480)
      • Multiple security and stability fixes


      Known Issues:

      • [Android] Missing support for XXXHDPI icon on Android 4.4 (3730948)
      • [x86][Android] Export Release Build from Flash Builder fails to run app on Android device when -arch parameter is used. (3759405)
      • [Android]Captive packaging fails for APK using multiple ANEs, throws OutOfMemoryError. (Workaround: run export _JAVA_OPTIONS='-Xms4096m -Xmx4096m' and then run the packaging command). (3766280)
      • [iOS8] A notification dialog is coming after launching any AIR applications. (3771162)
      • [Android] ADT Does not pass required heap space to dx.jar (3771118)
      • [Android] StageText restrict = "A-Z" not blocked lowercase letters input. (3769801)
      • [iOS] Package IPA file with ipa-app-store or ipa-ad-hoc type will case logic judgment with incorrect (3768506)
      • [Android] StageText displayAsPassword displays text without mask in landscape on Android (3768443)

       

       

      Download Locations:

       

      AIR 14 runtime for Windows: 14.0.0.110 Runtime Download

      AIR 14 runtime for Macintosh: 14.0.0.110 Runtime Download

       

      AIR 14 SDK & Compiler for Windows: 14.0.0.110 SDK & Compiler Download

      AIR 14 SDK & Compiler for Macintosh: 14.0.0.110 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 13 SDK and ActionScript Compiler 2.0 in a single SDK called “Adobe AIR 13 SDK & Compiler”.

       

      AIR SDK 14 (Compatible with Flex) for Windows: 14.0.0.110 SDK Windows Download

      AIR SDK 14 (Compatible with Flex) for Macintosh: 14.0.0.110 SDK Macintosh Download

       

      Previous versions of the AIR runtime and SDK can be found on the Archived AIR SDK and Runtimes page