Flash player 11.4 & AIR 3.4 new features
Some of the exiting new features added in Adobe Flash Player 11.4 and Adobe AIR 3.4, with some of the existing issues has been fixed.
We have detailed the new features added in Flash player and AIR.
Flash player & AIR New Features:
- ActionScript Workers (Flash Player)
- Sandbox Bridge support (Flash Player)
- Licensing support: Flash Player Premium Features for Gaming (Flash Player)
- Stage3D “constrained” profile for increased GPU reach (Flash Player and AIR)
- LZMA support for ByteArray (Flash Player and AIR)
- StageVideo attachCamera/Camera improvements (Flash Player and AIR)
- Compressed texture with alpha support for Stage3D (Flash Player and AIR)
- DXT Encoding(Flash Player and AIR)
- Deprecated Carbon APIs for AIR (AIR)
- Direct AIR deployment using ADT (AIR)
- Push Notifications for iOS (AIR)
- Ambient AudioPlaybackMode (AIR)
- Exception Support in Native Extensions for iOS (AIR)
- New option in ADT to list the attached mobile devices (AIR)
- ADT option to resolve ANE symbol conflicts on iOS (AIR)
New Features: Overview
With the introduction of Workers to ActionScript and the Flash Runtime, Flash Developers can now offload certain tasks like high-latency operations and long-running computations to “Background Workers”. These Background Workers run concurrently in order to leverage more machine resources and avoid things like UI freezes.
Note: To fully leverage ActionScript Workers and be able to debug workers, the next version of Flash Builder is required. This next version of Flash Builder will be made available through public beta in the August timeframe.
Note: Shared memory support (ByteArray.shareable) has been moved to a forthcoming release of Flash Player.
Sandbox Bridge support
Sandbox bridging allows specific ActionScript objects or functions to be exposed between SWF-to-SWF cross-domain communication. This feature is already available in AIR and is being ported to Flash Player in this release.
Licensing support: Flash Player Premium Features for Gaming (Flash Player)
With the introduction of Premium Features for gaming we now allow non-ActionScript workflows to target Flash Player. This release supports Premium Features license control of the XC APIs (the combined use of the domain memory API and Stage 3D hardware acceleration API) in Flash Player. These APIs are used by some third party tools such as Unity and Adobe’s Project “Alchemy” C/C++ compiler. For more information, please visit www.adobe.com/go/fpl.
Stage3D “constrained” profile for increased GPU reach
The Flash Player will gate the use of hardware acceleration based on the date of your video card’s driver. In previous releases, we gated support to drivers older than January 1, 2008. In this release, we will be changing the gating to apply to drivers older than January 1, 2006. Content using wmode=direct (or renderMode=direct for AIR) should be hardware accelerated on graphics card driver date newer than 1/1/2006 when possible. This applies to Stage3D and [StageVideo|StageVideo] APIs. In addition to that, we added a new profile for Stage3D called “constrained” profile, allowing your content to run hardware accelerated on the previously blacklisted Intel® GMA chipsets. See below for more details about this new profile and how to leverage it.
LZMA support for ByteArray
In addition to zlib compression of ByteArray, we are introducing an additional compression type based on LZMA to compress data inside a ByteArray through ByteArray.compress() and ByteArray.uncompress().
Compressed texture with alpha support for Stage3D (Flash Player and AIR)
Transparent images are now supported for compressed textures (ATF file format).
StageVideo attachCamera/Camera improvements
This feature exposes a new method on StageVideo objects that allows the Actionscript code to direct the video stream from the camera to a StageVideo object thus leveraging the GPU for rendering instead of the rasterizer. This allows the player to be much faster when processing a video stream from the camera when GPU acceleration is available.
This feature enables encoding of uncompressed textures into the DXT format during runtime, so that the texture can be uploaded to the GPU as a compressed DXT texture.
Available on desktop for both Flash Player 11.4 and AIR 3.4
Deprecated Carbon APIs for AIR
As of Mac OS X 10.8, Carbon APIs will no longer be supported by Apple. Hence these APIs and other deprecated code is being removed from AIR in this release to be in parity with Mac OSX 10.8.
Direct AIR deployment using ADT
This new feature enables the developer to deploy an AIR application on iOS devices without having to use iTunes or XCode. Please note that iTunes 10.5.0 or greater must be installed on the user’s machine to be able to use this feature.
iOS Push Notifications
This feature will use APNS (Apple Push Notification Service) and a provider (third party server which will communicate with the APN) to generate notifications. A new package, flash.notifications has been introduced. The delivery of push notifications is completely dependent on Apple Push Notification Service and APNS does not guarantee the delivery of push notifications. Apple also recommends subscribing to push notifications every time an application is launched. Every time the client app subscribes to push notifications, the APNS provides a token-id to the client app and this token-id should be sent to the third party server or provider that will be sending the remote notifications.
With AIR 3.4, users will have the option of one more AudioPlaybackMode i.e. AMBIENT other than VOICE and MEDIA. This new AudioPlaybackMode will allow the users to force their application to honor the “hardware mute switch” present in iphone(s) /ipad(s). The strongest use case of this Ambient playbackmode is in the game apps where the user of the app will have the option to silence the game sound and also can listen to the music of any other app in background. In Ambient mode, audio respects the hardware mute switch only on iOS devices. On AndroidTM devices, the Ambient mode will be just like the Media mode.
Exception Support in Native Extensions for iOS
A native extension for iOS can now use both C++ and Objective-C exceptions. It is up to the extension to catch all the exceptions thrown in its code. The runtime will not catch the exceptions thrown by extensions.
ADT option to list the attached mobile devices
A new option, ‘-devices’ has been added in ADT to list the attached iOS/AndroidTM devices. Users can avail this option instead of using adb for listing the AndroidTM devices and idb for listing the iOS devices. Please note that iTunes 10.5.0 or greater must be installed on the user’s machine to be able to use this feature.
ADT option to resolve ANE symbol conflicts on iOS
As application developers may use multiple native extensions obtained from various resources, a common symbol name in the 2 ANEs may give a packaging error saying there’s a duplicate symbol in the object files, or a crash at runtime. To circumvent this issue, a new ADT option, -hideAneLibSymbols, has been introduced, which can be specified at the time of packaging the application. It can take the values – yes or no, where yes hides the library symbols of each ANE from other ANEs.