Welcome to the developer release notes for Adobe AIR 2.7. This update includes enhanced performance and debugging workflow on iOS, media measurement APIs, acoustic echo cancellation APIs, and bug fixes related to security, stability, performance, and device compatibility.
|
|
Windows
|
Macintosh
|
Android
|
iOS
|
|
Processor
|
Minimum: Intel® Pentium® III 1GHz or faster processor Recommended: Pentium 4 2GHz or faster
|
Intel Core™ Duo 1.83GHz or faster processor.
|
ARMv7 processor with Vector FPU Minimum 550Mhz OpenGL ES2.0 H.264 & AAC H/W Decoders
|
iPod Touch 4th generation iPhone 3GS and iPhone 4 iPad
|
|
Operating System
|
Microsoft® Windows® XP Home, Professional, or Tablet PC Edition with Service Pack 2 or 3 (including 64 bit editions), Windows Server® 2003, Windows Vista® Home Premium, Business, Ultimate, or Enterprise (including 64-bit editions) with Service Pack 1, or Windows 7 (including 64 bit editions)
|
Mac OS X 10.4, 10.5 and 10.6
|
Google Android™ 2.2, 2.3 and 3.0
|
iOS 4 and higher
|
|
RAM
|
Minimum: 512MB RAM; Recommended: 1GB RAM
|
Minimum: 512MB RAM; Recommended: 1GB RAM
|
256MB RAM
|
As available in the above mentioned device.
|
Note: Linux desktop distributions are not supported with AIR 2.7. Users can install and run AIR 2.6 and earlier applications but will not be able to install or update to AIR 2.7.
Measuring video just got easier. With AIR 2.7 and Adobe® SiteCatalyst®, developers can now implement video analytics with as little as two lines of code. Other analytics solution providers can also use the new open APIs to easily implement a consistent video tracking mechanism irrespective of their implementation and/or the type of delivery protocol. Media Measurement for AIR and Flash Player allows companies to get a clear picture of how content is distributed, what the audience reach is, and how much of the media is played.
Specifically, AIR 2.7 introduces new events and properties that enable companies to capture the state of a particular video regardless of delivery protocols or how NetStream objects are handled. You will also be able to retrieve the Page Domain URL via a static method.
The modifications are grouped into the following four areas:
The new APIs require SWF version 12 or higher. Make sure that you publish your movie to SWF 12 and you must also configure your authoring environment with the new playerglobal.swc.
Enhanced Playback Events
The purpose of enhanced playback events is to dispatch the same events regardless of the delivery mechanism used for video playback (progressive download, RTMP streaming or newly added HTTP streaming). Previously, progressive download did not trigger all the NetStream playback events triggered by RTMP streaming. Such was the case for NetStream.Play.Complete, NetStream.Pause.Notify and NetStream.UnpauseNotify events.
Now, for progressive playback, Flash Player 10.3 dispatches NetStream.Pause.Notify, NetStream.Unpause.Notify and NetStream.Play.Complete.
In addition, we have added NetStream.SeekStart.Notify for progressive, RTMP streaming and HTTP streaming. The event is always dispatched by Flash Player when seek started. The info object contains the description string "Start Seeking seek_time". NetStream.SeekStart.Notify always precedes NetStream.Seek.Notify.
NetStream Monitoring
We have added a new NetMonitor class. This class has two functionalities. It contains a single method listStreams(), that returns the vector of NetStream objects. Secondly, the NetMonitor class dispatches NetMonitorEvent of the netStreamCreate type whenever a new NetStream object is created.
A typical usage scenario is:
var monitor:NetMonitor = new NetMonitor(); var streams:Vector<NetStream> = monitor.listStreams(); monitor.addEventListener(NetMonitorEvent.NET_STREAM_CREATE, netStreamCreate); private function netStreamCreate(e:NetMonitorEvent):void { // the new NetStream is e.netStream}
Whenever a data message is received on a NetStream, Flash Player invokes the corresponding method on NetStream.client object. Such data messages include onMetaData, onXMPData, etc. Flash Player Wasabi dispatches a new NetDataEvent when a data message is received on a NetStream. The advantage is that it's easy to add multiple events listeners that can receive this event. The usage is pretty straightforward.
var netConnection:NetConnection = new NetConnection(); netConnection.connect(null); var netStream:NetStream = new NetStream(netConnection); netStream.addEventListener(NetDataEvent.MEDIA_TYPE_DATA, onMediaData); private function onMediaData(e:MediaDataEvent):void { // e.timestamp: Timestamp of the message // e.info: Message object // e.info.handler: Handler name such as onMetaData, etc. // e.info.args:Array of arguments}
Enhanced NetStreamInfo
We have added the following properties to NetStreamInfo class:
Page Domain URL
We have added a new static method to Security class to obtain the domain of the containing HTML page. For security reasons, the method does not return the full URL, only the page domain, such as http://www.example.com.
Although you can obtain the container URL using ExternalInterface, the new method has the following advantages:
1. External interface only works when JavaScript is enabled
2. External interface requires allowScriptAccess set to a permissive value in the HTML wrapper
3. The pageDomain method also works when the page URL and the SWF URL are coming from different domains. (Whereas before you needed allowScriptAccess="always" for external interface to work.)
See ActionScript3 reference documentation for details.
Acoustic Echo Cancellation (AEC) is performed using a straightforward extension of the Microphone class that can provide acoustic echo cancellation, noise suppression, voice activity detection, and automatic compensationfor varying microphone input levels. It is instantiated using a static method on Microphone class and provides an additional property to configure enhanced microphone settings. See ActionScript3 reference documentation for details.
Please note that this feature is available for desktop platforms only.
Starting with AIR 2.7 desktop, developers have more control over the life-cycle of the pages loaded in the HTMLLoader control. In AIR 2.7, when navigating to another page (either by user input or programmatically), an additional location changing event is dispatched *before* the actual navigation occurs. Developers can listen for this event to take action based on the location being loaded or event prevent navigation to the new location altogether. This is a desktop only feature. For more details see the documentation for LocationChangeEvent.
This feature streamlines the iterative testing and debugging workflow by enabling the Interpreter Mode for iOS in AIR Developer Tool (ADT), which is part of the AIR SDK. Developers can use ADT to compile the code during the testing and debugging process for their iOS apps. It will dramatically speed up the testing and debugging process so developers can spend more time on improving the application, not waiting for compiling the code in every testing and debugging cycle.
The final version of AIR 2.7 desktop available in this program is 2.7.0.1953.
Please refer to the following tech note for installer troubleshooting:
http://kb2.adobe.com/cps/403/kb403150.html
After reviewing the installation tech note, if you still encounter problems please visit our installation forum to ask questions and review other solutions.
AIR Installation Forum: http://community.adobe.com/t5/air/bd-p/air?page=1&sort=latest_replies&filter=all
Adobe AIR 2.7.0.1953 for Android provides important bug fixes and addresses compatibility issues with some content using cross-domain policy files.
Adobe AIR 2.7.0.1948 includes security enhancements described in Security Bulletin APSB11-13
AIR on Windows/MacOS
AIR on iOS
AIR on Android
AIR on Windows/MacOS
AIR on iOS
AIR on Android
To report a feature request, please submit and vote on ideas using the Adobe AIR Ideas website.
To report a bug, please report the issue using the Adobe Flash Runtime bugbase.
To discuss issues and ideas, please visit our Adobe AIR forum
© 2011 Adobe Systems Incorporated. All rights reserved.
Sign in to your account