2012 年 8 月 14 日。歡迎使用 Adobe® Flash Player® 11.3 和 AIR® 3.3。這個版本包括與一般穩定性、音效、視訊和 iOS 應用程式開發相關的錯誤修正。

此次 Runtime 發行版本

  • Flash Player 桌上型電腦版本 11.3.300.271

新功能

 無

安全性增強功能

這個版本包含安全性公告 APSB12-18 中所列的安全性增強功能

修正的問題

已知問題

  • 串流 Flash 內容時發生音效扭曲問題 (3212648)

針對 Flash Player 11.3 進行編寫

若要使用新版 Flash Player,您必須傳遞額外的編譯器引數給 Flex 編譯器,藉此以 SWF 第 16 版為目標:-swf-version=16。指示如下。
如果您要使用 Adobe Flex SDK:

  • 下載適用於 Flash Player 11.3 的新 playerglobal.swc
  • 下載 Flex 4.5 SDK 表格中的 Flex 4.5.1 SDK (4.5.1.21328)。
  • 在 Flash Builder 中,建立新的 ActionScript 專案:「檔案 -> 新增 -> ActionScript 專案」。
  • 開啟專案的「屬性」面板 (以滑鼠右鍵按一下並選擇「屬性」)。選取左側清單中的「ActionScript 編譯器」。
  • 使用右上角的「設定 Flex SDK」選項,將專案指向 Flex 組建 21328。按一下「確定」。
  • 將您的專案設定為以 SWF 第 16 版為目標
  • 增加至「額外編譯器引數」輸入:-swf-version=16。這可確保輸出的 SWF 會以 SWF 第 16 版為目標。如果您在命令列上編譯,而不在 Flash Builder 中進行,則必須加入相同的編譯器引數。
  • 確定您的瀏覽器中已經安裝新版的 Flash Player 11.3 組建。

針對 AIR 3.3 進行編寫

更新至 AIR 3.3 命名空間
您必須將應用程式描述器檔案更新至 3.3 命名空間,才能存取新的 AIR 3.3 API 和行為。如果您的應用程式不需要新的 AIR 3.3 API 和行為,便不需要更新命名空間。不過,我們還是建議所有使用者開始使用 AIR 3.3 命名空間,即使您尚未使用新的 3.3 功能亦然。若要更新命名空間,請將應用程式描述器中的 xmlns 特質變更為:

<application xmlns="http://ns.adobe.com/air/application/3.3">

功能使用原則

全螢幕鍵盤輸入
若要以按鍵模式啟用全螢幕,必須在包含的 HTML 中增加新的 / 標籤參數 allowFullScreenInteractive。這個參數預設為 false,即不允許以按鍵啟用全螢幕。若要允許以按鍵啟用全螢幕,請將 allowFullScreenInteractive 設定為「true」,如下所示:

<object classid=”"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,18,0"
 width="600"  height="400" id="fullScreen" align="middle">

   <param name=”allowFullScreenInteractive” value=”true” />
   <param name=”movie” value=”fullScreenInteractive.swf” />

   <embed src=”fullScreen.swf” allowFullScreen=”true” width=”600” height=”400” name=”fullScreen” align=”middle” type=”application/x-shockwave-flash” pluginspage=”http://get.adobe.com/flashplayer/” />

</object>

在 mms.cfg 中設定 FullScreenInteractiveDisable = 1 可以停用這個功能,如下所示:

FullScreenInteractiveDisable=1 

相關 ActionScript API:

flash.display.Stage.getAllowsFullScreenInteractive();
flash.display.StageDisplayState
flash.events.FullScreenEvent

紋理串流

紋理串流是 Stage3D 的新功能,可以優先載入較粗糙、較低品質的紋理,然後隨著更多資料可供使用,以漸進方式改善紋理。

function createCubeTexture( size:int, format:String, optimizeForRenderToTexture:Boolean, streamingLevels:int=0):CubeTexture
function createTexture( width:int, height:int, format:String, optimizeForRenderToTexture:Boolean, streamingLevels:int=0 ):Texture;

createTexture 和 createCubeTexture 函數已增加其他選用參數 streamingLevels。如果這個參數為非 0,將會為這個紋理啟用串流。2D 紋理的最大值為 log2(max(width, height)),立方體對應紋理則為 log2(size)。較大的值會使紋理建立失敗,並出現 ActionScript 錯誤例外狀況。可啟用串流的紋理無法用於顯示紋理,其 optimizeForRenderToTexture 旗標會遭到忽略。

針對串流啟用的紋理可能會使記憶體使用量降低多達 50% 額外大小,並且上傳速度也可能會變慢。一旦完全載入紋理,便無法以不同內容再次串流。如果紋理標示為串流,則可將該紋理視為完成,並可在上傳所有上述 MIP 層級和 streamingLevels 值之後顯示。紋理上傳並未變更。

範例:

[Embed( source = "MipLevel9.jpg" )]
var MipLevel9:Class;
var context3D:Context3D;
var texture:Texture;

stage.stage3Ds[0].addEventListener(Event.CONTEXT3D_CREATE, createdHandler);
stage.stage3Ds[0].requestContext3D(Context3DRenderMode.AUTO);

function createdHandler(e:Event) {
            context3D = stage.stage3Ds[0].context3D;
            //set streaming levels to 9, a 1x1 mip level for a complete texture size of 512 (Mip level 0 =512, Mip level 9 = 1)
            texture = context3D.createTexture(512,512,Context3DTextureFormat.BGRA,false, 9);
            var mip9:Bitmap = new MipLevel9();
            texture.uploadFromBitmapData(mip9.bitmapData,9);
}


BitmapData.drawWithQuality
在過去,若要變更 BitmapData.draw 的品質,就必須修改舞台品質。BitmapData. drawWithQuality 是 BitmapData.draw 的擴充功能,這個擴充功能新增了選擇性參數,可指定向量顯示的品質。

function drawWithQuality(source: IBitmapDrawable, matrix:Matrix=null, colorTransform: ColorTransform =null, blendMode:String=null, clipRect:Rectangle=null, smoothing:Boolean=false, quality:String=null): void

下列是支援的品質值:

  • StageQuality.LOW
  • StageQuality.MEDIUM
  • StageQuality.BEST
  • StageQuality.HIGH_8X8_LINEAR
  • StageQuality.HIGH_16X16
  • StageQuality.HIGH_16X16_LINEAR

BitmapData.encode


BitmapData.encode 可讓 BitmapData 物件以原生方式壓縮成 PNG、JPEG 和 JPEG XR。這讓開發人員可以達到執行階段影像壓縮的原生速度,在行動裝置上非常有用。

function encode(rect:Rectangle,EncoderOptions :Object, byteArray: ByteArray = null): ByteArray;
支援的 EncoderOptions 物件如下所示:

// compress bitmap data as a JPEG file
var bitmapData:BitmapData = new BitmapData(640,480,false,0x00FF00);
var byteArray:ByteArray = new ByteArray();
bitmapData.encode(new Rectangle(0,0,640,480), new JPEGCompressOptions(), byteArray);
// Display the bitmap we just encoded
var loader:Loader = new Loader();
loader.loadBytes(byteArray);
addChild(loader); 

Context3D.driverinfo 中的硬體失敗字串

這個功能會在 Stage3D 內容無法進行硬體加速時提供 Context3D.driverInfo 中的資訊。Context3D.driverInfo 將會包含下列其中一個字串,說明 Stage3D 回復至軟體的原因。

  • Software Hw_disabled=userDisabled

「設定」UI 中的硬體加速設定核取方塊已停用,並且 Stage3D 使用軟體來顯示。

  • Software Hw_disabled=oldDriver

硬體圖形驅動程式因已知問題而列入黑名單,並且 Stage3D 使用軟體來顯示。更新驅動程式即可修正。

  • Software Hw_disabled=unavailable

通常是因為驅動程式功能的緣故或驅動程式已列入黑名單,又或者硬體圖形初始化發生任何失敗且 Stage3D 使用軟體來顯示,因此無法使用硬體顯示。

  • Software Hw_disabled=explicit

內容要求軟體透過 requestContext3D 明確地顯示,並且 Stage3D 使用軟體來顯示


外觀比例增強功能

在 AIR 3.3 中,執行階段忽略指定的外觀比例的問題已獲得解決。若 aspectRatio 已設定且 autoOrients 為 true (視 aspect-ratio 的值而定,landscape-left 和 landscape-right 或 portrait 和 portrait-upside-down 應該都支援),旋轉裝置時的舞台方向將限制為兩個方向。

增加了新的 StageAspectRatio 常數,名為 ANY。當所有裝置方向都將 autoOrients 設定為 true 時,StageAspectRatio.ANY 可以用來達成自動舞台方向。當應用程式描述器中少了 aspectRatio 標籤時,這會是預設的行為。

AIR iOS 的 USB 除錯
首先,以額外的 -listen 參數封裝應用程式,以確保應用程式啟動時偵聽 fdb 連線。

adt -package -target (ipa-debug-interpreter | ipa-debug) -listen (port number optional) -provisioning-profile xyz.mobileprovision -storetype pkcs12 -keystore Certificates.p12 -storepass pass123 OutputFile.ipa InputFile-app.xml InputFile.swf

根據預設,應用程式會偵聽連接埠 7936。使用者可以選擇指定任何連接埠。

adt -package -target (ipa-debug-interpreter | ipa-debug) -listen 16000 xyz.mobileprovision -storetype pkcs12 -keystore Certificates.p12 -storepass pass123 OutputFile.ipa InputFile-app.xml InputFile.swf

2) 將應用程式封裝為 ipa 之後,在裝置上安裝並啟動應用程式。

3) 以 -devices 當做參數,執行 idb 二進位檔 @ SDK_LOCATION/lib/aot/idb。隨即傳回連接至桌上型電腦的裝置清單,以及其 DEVICE_HANDLES。

idb -devices

4) 現在,桌上型電腦的部分連接埠必須轉送至偵聽連線的裝置連接埠。

idb -forward LOCAL_PORT REMOTE_PORT DEVICE_HANDLE

這個 LOCAL_PORT 是指桌上型電腦的連接埠。它可以是您所選的任何連接埠號碼 (最好大於 8000)。

REMORT_PORT 是您在封裝命令中指定的連接埠號碼。如果您在封裝時未設定任何連接埠號碼,您的應用程式會依預設偵聽連接埠 7936。

您裝置的 DEVICE_HANDLE 是從步驟 3 取得。

5) 現在,使用下列命令啟動 fdb。

fdb -p LOCAL_PORT

6) 隨即啟動 fdb 除錯程式。在命令列中輸入「r」,即可啟動除錯工作階段。

P.S.:idb 提供另一個名為「stopforward」的參數,此參數可用來停止連接埠轉送。然而,這只有在建立 fdb 工作階段前才適用。

idb -stopforward LOCAL_PORT

Flash Builder 目前不支援這個功能。

強化 AIR iOS 背景行為
背景支援現在更加類似 iOS 中的原生應用程式。除了一些已在 AIR for iOS 啟用的基本多工作業和背景音效支援,應用程式現在還支援背景中的位置更新和網路,並且可在背景應用程式即將遭到作業系統暫停時取得通知。
為此,我們增加了一組新標籤和事件。若要支援背景中的位置更新,請將下列包含在 AIR 應用程式描述器的 iPhone 標籤中:

<iPhone>
<InfoAdditions>
<![CDATA[
<key>UIBackgroundModes</key>
<array>
<string>location</string>
</array>
]]>
</InfoAdditions>
</iPhone> 

如果您的應用程式指定這個標籤並移到背景,播放程式將會繼續以 4fps 速度執行。然而,所有畫面更新 (顯示呼叫、OpenGL 呼叫) 將會遭到停用。
假設您的應用程式必須同時產生音效和軌道位置 (例如轉向建議導航應用程式),UIBackgroundModes 機碼可同時支援「location」和「audio」。
iOS 提供可執行簡短背景工作的機制。然而,iOS 不保證將會執行該工作,只是會代表使用者繼續處理工作更長一段時間。其中存在時間限制,因為這類背景工作會讓應用程式保持執行 (大約 10 分鐘)。

如果應用程式寫入器將屬性 executeInBackground 指定為 TRUE/FALSE,則會挑選值,並且應用程式會跟著動作。現在,當應用程式移到背景時,無論應用程式是否已暫停,都會引發 Deactivate 事件。為了提供更多特定資訊給應用程式,當應用程式即將遭到暫停時,Suspend 事件會傳送至應用程式,以啟用適當的應用程式行為。
在 iOS 上,為了節省電池使用量,每當應用程式選擇在背景執行,播放程式都會進行節流 (至 4fps)。

模擬器支援
由於 iOS 上的模擬器為 x86,因此我們已在 ADT 中增加兩個新目標。請注意,只有在解譯器模式才支援封裝模擬器。

目標為:

1.) ipa-test-interpreter-simulator
2.) ipa-debug-interpreter-simulator

若要開始在模擬器上測試應用程式,您不需向 Apple 取得開發人員憑證 (程序耗時),也不必在開始開發 AIR 應用程式前先建立提供描述檔 (使用者可自行建立的 p12 憑證便已足夠)。

若要封裝模擬器的應用程式,請執行下列命令。

解譯器目標

adt -package -target ipa-test-interpreter-simulator -storetype pkcs12 -keystore Certificates.p12 -storepass password Sample_ipa_name sample_ipa-app.xml sample_ipa.swf

除錯目標

adt -package -target ipa-debug-interpreter-simulator -storetype pkcs12 -keystore Certificates.p12 -storepass password Sample_ipa_name sample_ipa-app.xml sample_ipa.swf

*在模擬器中安裝應用程式*

adt -installApp -platform ios -platformsdk (path to sdk like /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk) -device ios-simulator -package Sample_ipa_name.ipa

*在模擬器中啟動應用程式*

adt -launchApp -platform ios -platformsdk (path to sdk like /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk) -device ios-simulator -appid

Sample_ipa_name

為了在模擬器上測試原生擴充功能,extension.xml 中增加了新的平台名稱 (iPhone-x86) 支援。
請注意,所有用於封裝原生擴充功能的命令都會維持不變,但從 XCode 取得的 library.a 檔案應編譯為僅供模擬器使用。

extension.xml 看起來如下

<extension xmlns="http://ns.adobe.com/air/extension/3.1">
<id>com.cnative.extensions</id>
<versionNumber>1</versionNumber>
<platforms>
<platform name="iPhone-x86">
<applicationDeployment>
<nativeLibrary>library.a</nativeLibrary>
<initializer>TestNativeExtensionsInitializer </initializer>
<finalizer>TestNativeExtensionsFinalizer </finalizer>
</applicationDeployment>
</platform>
</platforms>
</extension>

系統需求

如需目前 Flash Player 系統需求,請造訪 http://www.adobe.com/tw/products/flashplayer/systemreqs/

如需目前 AIR 系統需求,請造訪 http://www.adobe.com/tw/products/air/systemreqs/

如需 Flash Access 系統需求 (用戶端和伺服器),請造訪 http://www.adobe.com/tw/products/flashaccess/systemreqs/

Flash Player 11.3 具有下列最低系統需求:

 

Windows®

Macintosh  

處理器

針對小筆電類型的裝置,需使用 2.33GHz 或更高速的 x86 相容處理器或 Intel® Atom™ 1.6GHz 或更高速的處理器

Intel® Core™ Duo 1.83GHz 或更高速的處理器

作業系統 

Microsoft® Windows® XP (32 位元)、Windows Server® 2003 (32 位元)、Windows Server® 2008 (32 位元)、Windows Vista® (32 位元)、Windows 7® (32 位元和 64 位元)

Mac OS® X 10.6 和 Mac OS X 10.7

瀏覽器

Internet Explorer 7.0 和更新版本、Mozilla Firefox 4.0 和更新版本、Google Chrome、Safari 5.0 和更新版本、Opera 11

Safari 5.0 和更新版本、Mozilla Firefox 4.0 和更新版本、Google Chrome、Opera 11

記憶體

128MB 的記憶體 (建議小筆電類型的裝置使用 1GB 記憶體)、128MB 的圖形記憶體

256MB 的記憶體、128MB 的圖形記憶體

AIR 3.3 具有下列最低系統需求:

 

Windows®

Macintosh  

AndroidTM

iOS

處理器/裝置硬體

針對小筆電類型的裝置,需使用 2.33GHz 或更高速的 x86 相容處理器或 Intel Atom™ 1.6GHz 或更高速的處理器

Intel® Core™ Duo 1.83GHz 或更高速的處理器

具向量 FPU 的 ARMv7 處理器,最低 550MHz、OpenGL ES2.0、H.264 和 AAC H/W 解碼器

iPod touch (第 3 代) 32 GB 和 64 GB 機型、iPod touch 4、iPod touch 3GS、iPhone 4、iPad、iPad 2

作業系統 

Microsoft® Windows® XP、Windows Server® 2003、Windows Server® 2008、帶 Service Pack 2 的 Windows Vista® Home Premium、Business、Ultimate 或 Enterprise (包括 64 位元版本) 或 Windows 7

Mac OS® X 10.6 和 10.7

AndroidTM 2.2、2.3、3.0、3.1、3.2 和 4.0

iOS 4.2 和更新版本

RAM

512MB 的記憶體 (建議使用 1GB)

512MB 的記憶體 (建議使用 1GB)

256MB RAM 

 -

報告問題

發現錯誤?請將錯誤送出至 Flash Player 和 Adobe AIR 錯誤資料庫

Flash Player 和 AIR 可以利用您的圖形硬體來解碼和播放 H.264 視訊。有些視訊問題僅能透過特定的圖形硬體和驅動程式重現。報告關於視訊的問題時,必須記下您的圖形硬體和驅動程式以及作業系統和瀏覽器 (使用 Flash Player 時),以便我們重現和調查問題。請務必提供報告視訊播放問題指示中所述的資訊。注意:由於我們收到的電子郵件數量龐大,所以無法回應每項要求。

感謝您使用 Adobe® Flash Player® 和 AIR® 並花時間將您的意見回應傳送給我們!

 

Runtime 版本記錄

發行日期

Runtime 版本

新功能

安全性增強功能

修正的問題

2012 年 6 月 21 日
Flash Player 11.3.300.262 (僅限 Windows 外掛程式)
使用者在 Windows 上的 Firefox 中檢視 Flash 內容時發生毀損的情形 (3211153)

2012 年 6 月 8 日

Flash Player 桌上型電腦版本 11.3.300.257
AIR 桌上型電腦版本 3.3.0.3650
AIR Android 3.3.0.3650
AIR SDK 3.3.0.3650

桌上型電腦版本:
適用於 Flash Player 的全螢幕鍵盤輸入
透過 NetStream 為串流處理音效提供低延遲音效支援
Sound API 的低延遲音效支援
Firefox 受保護模式 (僅限 Windows®)
紋理串流
Mac 背景更新程式
Framelabel 事件
Bitmapdata.drawwithQuality
BitmapData.encode
ReleaseOutside 事件
執行階段類別偵察
改良的 Apple MacOS App Store 支援

AIR 行動裝置版本:
在 Windows® 上提供對 iOS 的平台 SDK 支援
AndroidTM 4.0 裝置的觸控筆支援
AIR iOS 的 USB 除錯
強化 AIR iOS 背景行為
iOS 模擬器支援
外觀比例增強功能

APSB-14

[適用於桌上型電腦版本的 Stage 3D] Starling 內容顯示在錯誤的位置 (3153467)
使用 GPU 顯示模式時,「iOS 顯示」在某些應用程式上停止回應 (3124838)
消除鋸齒品質設定不適用於 rendermode=gpu (3124862)
[Stage3D] 在配備 Intel HD 3000 的 Mac 上,未正確設定剪刀矩形 (2959500)
在 Windows 7 的 Chrome 瀏覽器上使用 Mouselock 時,移動 x/y 傳回絕對值,而非相對值 (3152175)
在瀏覽器中開啟多個 Flash 實體時發生音效延遲問題 (3084306)
播放視訊時出現綠色螢幕問題 (3050372)

此産品由 Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License 授權  Creative Commons 條款未涵蓋 Twitter™ 與 Facebook 文章。

法律說明   |   線上隱私權政策