June 11th, 2013. Welcome to Flash Player 11.7 and AIR 3.7. This is an scheduled update.This release contains some bug fixes and security enhancements

Fixed Issues

  • Camera is not working for stageVideo(iOS)(3558247)
  • No option to disable hardware acceleration(3560209)
  • No option to fallbaclk to WAV audio(3553459)

New Features

There are no features in this release. 
 
The following features were made available in the Flash Player release on April 9th, 2013
New Features :
  • Sandboxing enhancements
  • Prevent Cloud backup for Shared Objects (iOS)
  • Use CPU render mode for selected devices (iOS)
  • Externally host secondary SWF files (iOS)
  • Game Input API (Android)
 
For a full list of features in Flash Player and AIR, including features introduced in previous releases, please review the document here.
 

Released Versions

Deliverable Released Version
 Flash Player Desktop (Mac)  11.7.700.225
 Flash Player Desktop (Win)  11.7.700.224
 AIR Desktop(Mac)  3.7.0.2100
 AIR Desktop(Win)  3.7.0.2090
 AIR Mobile  3.7.0.2090
 AIR SDK & Compiler(Mac)  3.7.0.2100
 AIR SDK & Compiler(Win)  3.7.0.2090

Known Issues

  • Some newer AMD Graphics Processing Unit drivers exhibit rendering issues in certain circumstances (3431502)
  • Webcam fails when used in conjunction with Microsoft Kinect (3482709)
  • In AIR for iOS, cannot package localized swf names (3518195)
  • In AIR for iOS, giving focus to a Spark TextArea component can cause text to be truncated (3514889)
  • Long application description in AIR installation dialog causes the buttons to not be visible (3515305)
  • Slight lag in FLVPlayback video looping (3515066)
  • Large bitmaps which are scaled down do not render correctly when published (3520589)
  • On AIR, custom context menu items fire extra events (3493614)
  • In the Chrome browser, Swapping microphones at runtime fails (3493587)
  • In InternetExplorer, when flash content is scrolled out of view, audio can be garbled (3520586)
  • AAC audio becomes distorted when you attach an enhanced microphone with AEC (3523551)

Security Enhancements

Security Bulletin Impacted Deliverables
 APSB13-16  Flash Player Desktop Windows® & Mac
 APSB13-16  Flash Player AndroidTM

New Features: Usage Guidelines

Prevent Cloud backup for Shared Objects (iOS)

Currently in AIR applications for iOS, there is no way for a developer to prevent the local shared object data from being backed up on Apple iCloud. With AIR 3.7, a new static property, called ‘preventBackup’ has been introduced to SharedObject ActionScript class which will enable developers to address this limitation. This property can be used only with 3.7 or greater namespaces (swf-version=>20). Setting this property to true will prevent all the shared objects from being backed up. The default value of the property is false, this property will work only on devices having iOS 5.1 or higher.

var mySO:SharedObject;
mySO = SharedObject.getLocal("test");
mySO.data.userName = "developer";
mySO.data.itemNumbers = new Array(1,2,3);
SharedObject.preventBackup = true;
mySO.flush();


Use CPU Render Mode For selected devices while using GPU on others (iOS)

A new tag, <forceCPURenderModeForDevices> has been added for iOS devices that can force CPU render mode for a given set of iOS devices and have gpu renderMode for all the remaining devices. This feature could be used when gpu render mode results in insufficient memory on some low end devices (like iPad1 and iPod4).
e.g. If we specify <renderMode> GPU </renderMode> and <forceCPURenderModeForDevices> iPhone1 iPad1 </forceCPURenderModeForDevices> then all iOS devices other than iPad1 and iPhone1 will have renderMode GPU. 
Please note that this tag currently applies to iOS only. The tag needs to be added to the platform specific section under the iPhone tag.

<iPhone>
    <InfoAdditions>
      <![CDATA[
         <key>UIDeviceFamily</key>
         <array>
           <string>1</string>
           <string>2</string>
         </array>
         <key>UIStatusBarStyle</key>
         <string>UIStatusBarStyleBlackOpaque</string>
         <key>UIRequiresPersistentWiFi</key>
         <string>YES</string>
      ]]>
    </InfoAdditions>
    <forceCPURenderModeForDevices> iPhone3,1 iPad </forceCPURenderModeForDevices>
</iPhone>


Tag <forceCPURenderModeForDevices> has been added under the iPhone tag, and it accepts a space separated list of device model names. Some of the valid device model names are listed below.

"iPod4,1"   // iPod Touch Fourth Generation
"iPod5,1"   // iPod Touch Fifth Generation
"iPhone2,1" // iPhone 3GS
"iPhone3,1" // iPhone 4
"iPhone3,2" // iPhone 4 CDMA
"iPhone4,1" // iPhone 4S
"iPhone5,1" // iPhone 5
"iPad1,1"   // iPad
"iPad2,1"   // iPad 2
"iPad2,2"   // iPad 2 (GSM)
"iPad2,3"   // iPad 3 (CDMA)
"iPad2,4"   // iPad 3 (CDMAS)
"iPad2,5"   // iPad Mini Wifi
"iPad3,1"   // iPad 3 (WIFI)
"iPad3,2"   // iPad 3 (CDMA)
"iPad3,3"   // iPad 3 GSM
"iPad3,4"   // iPad 4 (Wifi)


Externally hosting secondary swf files (iOS)

Application developers will now be able to host their secondary SWFs on an external server and load them on demand as per their application logic. Secondary SWFs which have any ABC code in AOT mode, which worked for just locally packaged SWFs earlier, will now work for loading SWFs externally as well.
The developer will need to change the URL of Loader's URLRequest to the URL of his externally hosted stripped SWF. A sample URL request for using this feature is

private var externalSwfUrl:String= "http://www.xyz.com/ExternalSwf.swf";
private var urlRequest:URLRequest = new URLRequest(externalSwfUrl);

To enable this feature, a developer will have to specify a text file containing details of the SWF files to be stripped & externally hosted. The developer needs to specify line separated paths of SWFs which are to be externally hosted within this text file. The format of specifying SWF Files within a Sample .txt file is as follows :

assets/Level1.swf
assets/Level2.swf
assets/Level3/asset/Level3.swf

This text file needs to be mentioned in the <externalSwfs> Tag under the <iPhone> Tag within the application descriptor as shown below :

<iPhone>
       .
       .
       <externalSwfs>assets/SampleSWFInfoFile.txt</externalSwfs>
       .
       .
</iPhone>

During ADT packaging, the developer needs to specify the text file just like an asset along with the set of SWF's specified in the text file. A sample ADT command for using this feature is:

adt -package -target ipa-app-store -provisioning-profile <Provisioning Profile> -storetype pkcs12 -keystore <Certificate> -storepass <Password> ResultantIPA.ipa SampleMainSwf-app.xml SampleMainSwf.swf assets/SampleSWFInfoFile.txt assets/Level1.swf assets/Level2.swf assets/Level3/asset/Level3.swf

During IPA packaging, ADT extracts the Actionscript code from all child SWFs which are specified within the sample text file, adds it to the final executable and moves the stripped SWFs into the "externalStrippedSwfs" folder created in the current working directory. The directory structure within the "externalStrippedSwfs" folder remains the same as specified within the text file. The generated stripped SWF's can be externally hosted on a web server.
A working sample Actionscript code which loads a secondary swf derived using the above workflow, from an external server is as follows :

package
{
    import flash.display.Loader;
    import flash.display.Sprite;
    import flash.events.Event;
    import flash.events.IOErrorEvent;
    import flash.net.URLRequest;
    import flash.system.ApplicationDomain;
    import flash.system.LoaderContext;
 
    public class SampleMainSwf extends Sprite
    {
        private var externalLoader:Loader;
        private var url:String= "http://www.xyz.com/Level1.swf";
        private var urlRequest:URLRequest = new URLRequest(url);
        private var ldrContext:LoaderContext;
 
        public function SampleMainSwf()
        {
            externalLoader = new Loader();
            externalLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,completeHandler);
            externalLoader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR,errorHandler);
            ldrContext=new LoaderContext(false,ApplicationDomain.currentDomain,null);
 
            try
            {
                externalLoader.load(urlRequest, ldrContext);
            }
            catch(e:Error)
            {
                trace("Error ID : "+e.errorID+"\nError Message : "+e.message);
            }
        }
 
        private function completeHandler(e:Event):void
        {
            addChild(externalLoader);
        }
 
        private function errorHandler(e:IOErrorEvent):void
        {
            trace("In IO ErrorEvent Handler");
        }
 
    }
}

Note:
1. The current releases of Flash Builder 4.7/Flash Professional CS6 do not support this feature. To enable generation of Stripped SWF for external hosting, command line ADT packaging should be used.
2. The loading of Flex secondary SWFs causes the application to crash.

GameInput API (Android)

The GameInput API is an interface that allows applications to communicate with attached game input devices (joysticks, gamepads, wands, etc). There is a wide range of game input devices, which have different capabilities and controls. This API is only supported on Android devices running on OS version 4.1 or higher. This API is implemented such that it might function well with different (and possibly unknown) types of game input devices.
This feature can only be used with namespace 3.7 or greater and requires the minimum swf version to be equal to 20.

private var gameInput:GameInput;
    public function TestGameInput()
    {
        trace("GameInput.isSupported - "+ GameInput.isSupported);
        trace("GameInput.numDevices - "+ GameInput.numDevices);
 
        gameInput = newGameInput();
        gameInput.addEventListener(GameInputEvent.DEVICE_ADDED, inputDeviceAddedEvent);
        gameInput.addEventListener(GameInputEvent.DEVICE_REMOVED, inputDeviceRemovedEvent);
 
        function inputDeviceRemovedEvent(e:GameInputEvent):void
        {
            trace("inputDeviceRemovedEvent - "+ e.device);
        }
 
        function inputDeviceAddedEvent(e:GameInputEvent):void
        {
            trace("inputDeviceAddedEvent - "+ e.device);
            getDeviceInformation(e.device);
        }
 
        function getDeviceInformation(device:GameInputDevice):void
        {
            trace("device.enabled - "+ device.enabled);
            trace("device.id - "+ device.id);
            trace("device.name - "+ device.name);
            trace("device.numControls - "+ device.numControls);
            trace("device.sampleInterval - "+ device.sampleInterval);
 
            for(var i:Number=0; i < device.numControls; i++)
            {
                var control:GameInputControl = device.getControlAt(i);
                getControlInformation(control);
                control.addEventListener(Event.CHANGE, changeEvent);
            }
        }
 
        function changeEvent(e:Event):void
        {
            var control:GameInputControl = e.target as GameInputControl;
            getControlInformation(control);
        }
 
        function getControlInformation(control:GameInputControl):void
        {
            trace("control.device - "+ control.device);
            trace("control.value - "+ control.value);
            trace("control.minValue - "+ control.minValue);
            trace("control.maxValue - "+ control.maxValue);
            trace("control.id - "+ control.id);
 
        }
    }

Authoring Guidelines

Authoring for Flash Player 11.7

To use the new Flash Player, you will need to target SWF version 20 by passing in an extra compiler argument to the Flex compiler: -swf-version=20. Directions are below. If you are using the Adobe Flex SDK:

  • Download the new playerglobal.swc for Flash Player 11.7
  • Download Flex 4.5.1 SDK (4.5.1.21328) from the Flex 4.5 SDK table.
  • Install the build in your development environment
  • In Flash Builder, create a new ActionScript project: File -> New -> ActionScript project.
  • Open the project Properties panel (right-click and chose 'Properties'). Select ActionScript Compiler from the list on the left.
  • Use the 'Configure Flex SDK's' option in the upper right hand corner to point the project to Flex build 21328. Click ok.
  • Configure your project to target SWF version 20
  • Open the project Properties panel (right-click and chose 'Properties'). Select ActionScript Compiler from the list on the left.
  • Add to the 'Additional compiler arguments' input: -swf-version=20. This ensures the outputted SWF targets SWF version 20. If you compile on the command-line and not in Flash Builder, you need to add the same compiler argument.
  • Ensure you have installed the new Flash Player 11.7 build in your browser.

Authoring for AIR 3.7 Update to the AIR 3.7 namespace

You must update your application descriptor file to the 3.7 namespace in order to access the new AIR 3.7 APIs and behavior. If your application does not require the new AIR 3.7 APIs and behavior, you are not required to update the namespace. However, we recommend all users start using the AIR 3.7 namespace even if you are not yet taking advantage of the new 3.7 capabilities. To update the namespace, change the xmlns attribute in your application descriptor to: <application xmlns="http://ns.adobe.com/air/application/3.7">

Reporting a Bug

Found a bug? Please submit a bug to the Flash Player and Adobe AIR bug database.

Flash Player and AIR may leverage your graphics hardware to decode and play H.264 video. There may be video issues that can only be reproduced with your particular graphics hardware and driver. When reporting an issue involving video, it is essential to note your graphics hardware and driver, along with your operating system and browser (when using Flash Player), so that we can reproduce and investigate issues. Please be sure to include this information as described in Instructions for Reporting Video Playback Issues. Note: Due to the high volume of email we receive, we are unable to respond to every request.

Thank you for using Adobe® Flash Player® and AIR® and for taking the time to send us your feedback!

System Requirements

For the latest Flash Player system requirements please review the document here

For the latest AIR system requirements please review the document here

Runtime Version(s) History


 Release Date Runtime Version Security Enhancements
May 21st, 2013 Flash Player for Desktop(Windows, Mac): 11.7.700.203
Flash Player (Chrome): 11.7.700.203
 - 
May 14th, 2013 Flash Player for Desktop(Windows, Mac): 11.7.700.202
AIR Desktop, iOS, Android: 3.7.0.1860
AIR SDK & Compiler: 3.7.0.1860
 APSB13-14
April 9th, 2013 Flash Player for Desktop(Windows, Mac): 11.7.700.169
Flash Player for Chrome: 11.7.700.179
AIR Desktop, iOS: 11.7.0.1530
AIR Android: 11.7.0.1660
AIR SDK: 11.7.0.1530
AIR SDK & Compiler: 11.7.0.1530
 APSB13-11
March 12th, 2013  Flash Player for Desktop(Windows, Mac): 11.6.602.280
AIR Windows, Mac, Android, iOS: 3.6.0.6090
AIR SDK: 3.6.0.6090
AIR SDK & Compiler: 3.6.0.6090
 APSB13-09
February 26th, 2013  Flash Player for Desktop (Windows, Mac): 11.6.602.171  APSB13-08
February 12th, 2013 Flash Player for Desktop(Windows): 11.6.602.168
Flash Player for Desktop(Mac): 11.6.602.167
AIR Windows, Mac, Android, iOS: 3.6.0.597
AIR SDK & Compiler: 3.6.0.599
 APSB13-05
February 7th, 2013 Flash Player for Desktop(Windows, Mac): 11.5.502.149  APSB13-04
January 8th, 2013 Flash Player Desktop (Windows,Mac): 11.5.502.146
AIR (Windows,Mac, Mobile): 3.5.0.1060
AIR SDK: 3.5.0.1060
 APSB13-01
December 11th, 2012 Flash Player Desktop Windows: 11.5.502.135
Flash Player Desktop Mac: 11.5.502.136
AIR Windows, Android: 3.5.0.880
AIR Mac: 3.5.0.890
 APSB12-27
November 6th, 2012 Flash Player Desktop (Windows, Mac): 11.5.502.110
AIR (Windows, Mac, Mobile): 3.5.0.600
AIR SDK: 3.5.0.600
 APSB12-24
October 8th, 2012  Flash Player Desktop (Windows, Mac): 11.4.402.287
 AIR (Windows, Mac, Mobile): 3.4.0.2710
 AIR SDK: 3.4.0.2710
 APSB12-22
August 21st, 2012  Flash Player Desktop (Windows, Mac) :  11.4.402.265
 AIR (Windows, Mac, Mobile): 3.4.0.2540
 AIR SDK: 3.4.0.2540
 APSB12-19

This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License  Twitter™ and Facebook posts are not covered under the terms of Creative Commons.

Legal Notices   |   Online Privacy Policy