Adobe Flash Builder 4.7 新功能詳解


Adobe Flash Builder 4.7 Beta終於公開測試了。雖然版本號只增加了.1,增強的新功能可是一點也不含糊。我們一起來看看到底有什么新功能吧!
 
在我看來,最大的改變是終於提供64位版了!隨着64位 Windows 7的普及(64位的硬件從N多年前就普及了),已經為64位應用的普及,提供了良好的基礎,64位應用是大勢所趨。畢竟,64位應用可以使用更大的CPU帶寬和更多的內存,從而帶來性能的提升。After Effect、Photoshop等早已變成64版的了,而 Flash Builder 4.7現在終於也變64位了。
 
不過,官方的Release Notes中並沒有提到這項新功能。前幾天 Lee Brimelow 介紹 Flash Builder 4.7的時候,可是把這一點放在最前面介紹的……
 
 

 
 
桌面的圖標也換成 CS6 風格的了……雖然名字沒有按以前說的那樣改成CS6。
 
新的界面看上去變化並不大。
 
 

 

 
但實際上更新的功能很多,幫助文檔中相關的內容比較分散,我整理了一下貼在這里:
 
一、首先是AIR SDK的版本更新到了3.4。
 
AIR 3.4和Flash Player 11.4的新功能,不用改配置就可以直接用了。

 
二、支持自定義ADT和ADL的啟動配置。
 
在用AIR Debug Launcher(ADL)打包應用程序和用AIR開發工具(ADT)啟動應用之前,你可以自定義的參數值。
 
當你啟動或調試應用程序,你可以:
 

編輯自定義的參數值,

添加新的打包內容,

添加一個參數

通過提供一個空值來刪除現有的參數。

所謂可自定義的參數值是你所配置的值或Flash Builder內部計算的值。
 
注: 對於ADL和非移動封裝類型的導出發布版,不支持添加新的參數。
 
編輯參數值,請按照下列步驟操作:
 
在運行/調試配置對話框中,單擊“自定義啟動”。
 
 

 


 
在自定義啟動參數對話框中單擊“編輯”。
 
 

 
 
選擇你要編輯的參數值。
 
你可以選擇把自定義值添加最后,也可以添加到一個特定的參數之前。
 
Flash Builder會先驗證自定義值后,然后才接受它。例如,Flash Builder不允許空參數值。
 
建議你為運行在桌面和其它設備上的應用創建單獨的構建目標,並適當地修改參數。
 
 
三、支持創建,管理和調試ActionScript Worker。
 
Flex開發者們終於可以用上多線程了。而且Flash Builder 4.7直接提供了新建“ActionScript Worker”這個選項,很方便。
 
Flash Builder 通過允許你將 ActionScript 程序作為 worker 運行,支持多線程 ActionScript 編程。Worker 與主 ActionScript 程序並行運行,並且可以與主 ActionScript 程序和其他 ActionScript worker 進行通信。
 
創建 ActionScript worker
 
你可以使用 Flash Builder 中的向導通過執行以下步驟來為你的 Flex 和 ActionScript 項目創建 ActionScript worker:
 
1. 選擇“文件”>“新建”>“ActionScript Worker”。
 

 


 


 

2. 為你的 ActionScript worker 指定一個包名稱。如果未指定包,則會在默認包中聲明該類。如果你指定了一個不存在的包文件夾,則向導將創建該文件夾。
 
 

 

 
3. 為 ActionScript worker 文件命名。 
4. 默認情況下,ActionScript worker 擴展自 flash.display.Sprite。因此,你只能選擇擴展自 Sprite 的那些類。 
5. 添加包含你要在你的 ActionScript worker 中使用的常量和方法的任何接口。 
6. 指定以下任意代碼生成選項:
 
從超類生成構造函數
通過調用 super() 生成構造函數。如果超類構造函數接受參數,則這些參數將包括在生成的構造參數中並通過 super() 調用向上傳遞。
 
生成從接口繼承的函數
為各個接口方法生成函數存根。這些存根包括一個 return 語句,該語句返回 null(如果是基本類型,則返回 0 或 false)以便存根進行編譯。
 
生成注釋
在生成的函數或構造函數的主體中插入 "//TODO: implement function"。 
7. 指定 ActionScript worker 的用法。有關更多信息,請參閱指定 ActionScript worker 的用法。 
8. 單擊“完成”以在指定的包中保存 worker(.as 文件擴展名)並在代碼編輯器中將其打開。 
9. 為你的 ActionScript worker 編寫代碼。
 
Flash Builder 提供了 ActionScript worker 代碼模板,供你用來快速為 worker 文件添加代碼。有關使用代碼模板的更多信息,請參閱代碼模板。
要將某個現有的 ActionScript 類轉換為 worker,請執行以下步驟:
 
1. 在包資源管理器中,選擇你要轉換為 ActionScript worker 的 ActionScript 類。 
2. 從“包資源管理器”上下文菜單中,選擇“設置為 ActionScript Worker”。
 
 

 

 
每當你創建一個 ActionScript worker 時,該 worker 文件都將添加到“項目屬性”對話框中的 ActionScript worker 列表中。

 
指定 ActionScript worker 的用法
在你創建 ActionScript worker、編輯 worker,或將 ActionScript 類轉換為 worker 時,你可以指定 worker 的 用法。 
 
通過選擇下列選項之一,你可以選擇嵌入 worker 或在外部加載它:
 
嵌入的 Worker 為你要嵌入的 ActionScript worker 類生成一個 SWF 文件。該 SWF 文件將生成到項目的 "workerswfs" 文件夾中,而不是生成到用戶選擇的輸出文件夾中。
 
當你選擇嵌入一個 worker 時,Flash Builder 將生成一個名為 Workers.as 的類。生成的類包含用來嵌入 SWF 文件並創建 getter 方法的代碼。你可以使用 getter 方法來訪問嵌入的 ActionScript worker 的 ByteArray 類。
 
重要說明: 不要修改自動生成的類的內容。 
 
例如,如果你創建了一個名為 "MyWorker" 的嵌入 ActionScript worker,則會生成類似以下內容的代碼:public class Workers 
    [Embed(source="../workerswfs/MyWorker.swf", mimeType="application/octet-stream")] 
    private static var MyWorker_ByteClass:Class; 
    public static function get MyWorker():ByteArray 
    { 
        return new MyWorker_ByteClass(); 
    } 
 
每當你添加、重命名、移動或刪除 ActionScript worker 時,Flash Builder 都會修改在 Workers.as 文件中生成的代碼。
 
如果項目中存在一個名為 Workers.as 的文件,則 Flash Builder 會按指定的順序生成具有以下文件名的類:
 
1. WorkersManager.as 
2. WorkersHolder.as
 
如果具有所有這些名稱的類都存在,則 Flash Builder 會通過按順序在這些文件名后附加數字來生成具有唯一文件名的類。例如,Workers1.as、WorkersManager1.as、WorkersHolder1.as、Workers2.as,依此類推。如果需要,你可以選擇重命名這些文件;Flash Builder 會記住並使用新文件名來生成代碼。 
 
當你運行或調試包含嵌入的 ActionScript worker 的項目時,"workerswfs" 文件夾包含調試 SWF 文件。當你導出發行版時,發行版 SWF 文件將覆蓋 "workerswfs" 文件夾中的調試 SWF 文件。
 
外部加載的 Worker 在用戶選擇的輸出文件夾中為 ActionScript worker 類生成 SWF 文件。
 
在通過外部加載的 ActionScript worker 運行或調試項目時,調試 SWF 文件將生成到 "bin-debug" 文件夾中,發行版 SWF 文件將生成到 "release" 文件夾中。

 
管理 ActionScript worker 文件
項目的“屬性”對話框允許你管理你的 ActionScript 或 Flex 項目中的 worker 文件。
 
 

 

 
1. 在包資源管理器中,選擇一個項目。
2. 從主菜單中選擇“項目”>“屬性”,或者從上下文菜單中選擇“屬性”。此時會出現項目的“屬性”對話框。 
3. 在左窗格中,選擇“ActionScript Worker”。 
4. 根據需要添加、編輯或刪除 worker 文件,然后單擊“確定”。
 
添加 ActionScript worker 或者將 ActionScript 類轉換為 worker。
Flash Builder 提供了用來將你的項目中的 ActionScript 類轉換為 worker 的選項。
1. 轉到項目的“屬性”對話框並選擇“ActionScript Worker”。 
2. 單擊“添加”。 
3. 單擊“瀏覽”以選擇你要設置為 ActionScript worker 的類。Flash Builder 僅顯示那些擴展自 Sprite 的類和公共類。 
4. 指定 worker 的用法。有關更多信息,請參閱指定 ActionScript worker 的用法。
另外,你還可以在包資源管理器中使用項目的上下文菜單,選擇“設置為 ActionScript Worker”,然后指定 worker 用法首選項。

 
四、蘋果iOS設備(USB)測試和調試支持。
在iOS設備上測試和調試應用程序時,不用連 iTunes 啦。我很久不做iOS應用了,這一部分就不多說。做iOS開發的朋友們,可以訪問這里。

 
五、蘋果的iOS模擬器測試和調試的支持。
雖然在實際的設備上測試和調試效果更好。但用模擬器可以節省大量時間,不要只用模擬器就好。不過需要注意的是iOS 模擬器僅在 Mac 上受支持,在 Windows 上不受支持。所以像我這種 N 多年不用 Mac 的人就直接飄過……

 
六、為跨屏幕項目配置多個構建目標。
在開發跨屏幕項目時,由於不同平台有不同的特性,以前那種為所有平台統一配置構建目標的方式會帶來很多問題。而之前統一配置的方式,使得我們必須為同一個項目創建不同平台的副本,才能配置不同的構建目標。
而現在在為多個平台和設備開發移動設備應用程序時,Flash Builder 允許你為每個啟動目標指定不同的構建配置。 
你可以創建具有必需的包內容(例如本機擴展、證書配置和各種平台 SDK)的自定義構建目標。 
有關為構建目標指定項目屬性的更多信息,請參閱對移動設備項目進行打包的項目屬性。
創建自定義構建目標
1. 在包資源管理器中,選擇項目。 
2. 從主菜單中選擇“項目”>“屬性”,或者從上下文菜單中選擇“屬性”。 
3. 在“項目屬性”對話框中,選擇“Flex 構建打包”,並選擇你要查看或更改其設置的目標平台。 
4. 要創建自定義目標,請單擊“創建自定義”,並指定新目標的詳細信息。然后,單擊“創建”。你創建的目標將出現在可用目標列表中。 
5. 指定你要用來對移動設備應用程序、包內容、本機擴展,以及權限(如果適用)進行簽名的數字證書。 
6. 單擊“確定”。
 
 

 

 
當然很不幸的是我所用的版本中,按鈕的文字還是英文的。
 
在啟動配置中選擇一個自定義構建目標
當你指定一個啟動配置以運行或調試應用程序時,Flash Builder 會默認選取合適的構建目標設置。例如,假定你創建了一個構建目標 "d1" 來在 iOS 設備上運行應用程序。當你創建啟動配置以在模擬器上調試應用程序時,將默認選擇 "d1" 作為構建目標。不過,你可以更改默認選擇並選擇一個不同的構建目標。
 
將應用程序導出到自定義目標
除了標准的受支持平台之外,你還可以將移動設備應用程序導出到受支持的自定義目標。你可以使用“導出發行版”功能以僅在設備上啟動自定義目標。當你選擇“項目”>“導出發行版”時,將顯示為該項目配置的所有基於設備的目標。 
 
如果某個設備有多個構建目標,則目標名稱將以 platformname-targetname 格式顯示。例如,如果你配置了兩個構建目標以在 iOS 設備上啟動應用程序,則目標名稱將顯示為 AppleiOS-targetname1 和 AppleiOS-targetname2。所創建的應用程序包名稱指定了匹配的目標名稱。

 
七、支持Apache的Flex SDK
 
 

 

 

 
雖然目前Apache的Flex SDK也沒有什么重大改進,但以后就看他們的了。
 
如果想下載Apache Flex或者想進一步了解Flash Builder中使用Apache的Flex SDK的更多信息,請參閱http://www.adobe.com/go/apacheflex_download。

 
八、Falcon!

 

 

 
傳說中的下一代更快更強的編譯器:Falcon(獵鷹)終於公開露面了。 Adobe <wbr>Flash <wbr>Builder <wbr>4.7 <wbr>Beta新功能詳解

 
九、針對import的改進
 
1. 添加缺少的import
如果你的 ActionScript 腳本或 MXML 腳本塊中有未定義的變量,你可以使用“組織導入”功能一次添加缺少的所有 import 語句。
 
2. 使用通配符整合來自同一個包的 import 語句
如果有多個來自同一個包的 import 語句,則可以在 import 語句中使用通配符而不需要將語句重復多次。
在使用 <package> * 通配符之前,你可以指定針對同一個包中的類型允許的 import 語句數。例如,如果有來自 flash.events 包的多個 import 語句,則 Flash Builder 會將所有 import 語句整合為:import flash.events.*; 
默認情況下,如果你使用了來自同一個包的 99 個以上 import 語句,則 Flash Builder 將應用 <package>.* 通配符。你可以使用“組織導入”首選項對話框更改此默認值。

 
十、新的快速輔助
 
1. 將參數分配給新的或現有的變量
 
如果你有包含參數的函數,“快速輔助”允許你將參數分配給一個新的實例變量。
例如,如果有包含參數 arg 的函數,如下所示:
class A{ function method(arg:String):void { } }
將光標置於 arg 內,並調用“快速輔助”。然后,選擇“將參數分配給新實例變量”。語句將更改為:
class A { private var arg:String; function method(arg:String):void { this.arg = arg; } }
如果你有已經定義的實例變量,可以將參數分配給其中之一。
例如,如果有一個變量 myArg,定義如下:
class A { private var myArg:String; function method(arg:String):void { } }
將光標置於 arg 內,並調用“快速輔助”。“快速輔助”檢測到 myArg 變量,並顯示選項“將參數分配給實例變量 'myArg'。選擇此選項會將語句更改為:
class A { private var myArg:String; function method(arg:String):void { myArg = arg; } }

 
2. 將本地變量轉換為參數
 
如果你的函數內有局部變量,則“快速輔助”允許你將局部變量轉換為參數。 
例如,如果函數內存在一個變量,如下所示: 
 
public function method():void { 
var i:int = 10; 
將光標置於變量定義內的任意位置,並調用“快速輔助”。選擇“將局部變量轉換為參數”。將創建如下所示的參數:
 
public function method(i:int):void { 
    i = 10; 
}

 
3. 使用轉換類型創建新的局部變量
 
“快速輔助”允許你在一個條件表達式內創建轉換類型的局部變量。 
例如,如果有以下 if 語句:
 
if(myObject is Button) { 
或者有一個 while 語句: 
while(myObject is Button) { 
 
請將光標置於 if 或 while 語句內,並調用“快速輔助”。“快速輔助”將顯示選項“使用轉換類型創建新的局部變量”。選擇此選項會生成以下條件表達式:
 
if(myObject is Button) { 
    var button:Button = myObject as Button; 

 
4. 將條件語句替換為 If-Else 語句
“快速輔助”允許你將條件語句替換為 if-else 語句。 
例如,如果有一個條件語句,如下所示: 
 
var foo:String = bool?"Yes":"No"; 
 
請將光標置於條件語句 bool?"Yes":"No" 內的任意位置,並調用“快速輔助”。然后,選擇“將條件語句替換為 If-Else 語句”。將生成如下所示的 if-else 語句: 
 
var foo:String; 
    if (bool) 
        { 
            foo = "Yes"; 
        } 
    else 
        { 
            foo = "No"; 
        } 
 
5. 添加 Else、Else-If、Finally 和 Catch 語句
 
如果有一個 If 語句,你可以使用“快速輔助”來添加 Else 和 Else-If 語句。 
例如,如果有以下 if 語句:
 
 var foo:Boolean = false; 
if(foo) { 
 
請將光標置於 if 內,並調用“快速輔助”。“快速輔助”將顯示添加 else 和 else-if 語句的選項。如果你已定義了一個 else 語句,則“快速輔助”將顯示添加 else-if 語句的選項。
 
同樣,如果你已定義了一個 try 語句,則可以添加 finally 和 catch 語句。

 
6. 將匿名函數轉換為命名函數
 
如果你有匿名函數,你可以使用“快速輔助”快速將其轉換為命名函數。 
例如,如果有如下所示的匿名函數: 
 
public function method1():void; 
    var foo:Function = function(x:int, y:int, z:int):void; 
    { 
        trace(x, y, z); 
    } 
 
將光標置於 function() 內,然后按 Control+1。然后選擇“將匿名函數轉換為命名函數”。將創建如下所示的命名函數:
 
public function method1():void; 
    var foo:Function = fooFunction; 
protected function fooFunction(x:int, y:int, z:int):void; 
    trace(x, y, z); 
}

 
十一、實時錯誤高亮
 
當你在 ActionScript 文件中或者在 MXML 文件內的 ActionScript 塊中鍵入 ActionScript 代碼時,Flash Builder 將在你鍵入時檢測錯誤。在保存文件或編譯代碼之前,你可以快速找出這些錯誤。
 
錯誤指示器(在錯誤圖標旁邊有一個燈泡)表示你可以使用“快速修正”來修正問題。
 
 
 

 

 

 

要使用“快速修正”功能,請執行以下操作之一:

 

在編輯器中,從上下文菜單中選擇“快速修正/輔助”,然后選擇所需的選項。

使用鍵盤快捷鍵 Control+1 (Windows) 或 Command+1 (Mac OS),然后選擇所需的選項。

在編輯器中,代碼行旁的(紅叉)表示沒有可用於該錯誤的“快速修正”選項。

要關閉“當前錯誤加亮”,請在“首選項”對話框中選擇“Flash Builder”>“編輯器”,然后取消選擇“鍵入時報告問題”。這樣,將只會在你保存文件后在“問題”視圖中報告代碼錯誤。你還可以在“問題”視圖中使用“快速修正”選項來修正錯誤。要執行此操作,請在“問題”視圖中右鍵單擊錯誤,然后選擇“快速修正”。

 

十二、創建 ActionScript 庫項目

 

不知道為什么,官方的Release Notes中沒有提到這項新功能。

 

在Flash Builder之前的版本里,只能創建 Flex 庫項目。而對於我這種更喜歡直接用 ActionScript 寫代碼的人來說,現在可以使用 ActionScript 項目庫向導構建 ActionScript 自定義代碼庫。通常,你創建 ActionScript 庫項目,添加特定的 ActionScript 類,然后編譯項目。然后,Flash Builder 生成你可以分發給其他開發者或在應用程序之間共享的 SWC 文件。

 

“新建 ActionScript 庫項目”向導會指導你完成創建 ActionScript 庫項目的步驟,提示你提供項目的名稱、位置和構建路徑信息。

 

 


 



 

1. 選擇“文件”>“新建”>“ActionScript 庫項目”。

2. 輸入項目名稱,然后指定以下內容:

 項目位置 默認位置為當前的工作空間。在 Windows 上,默認工作空間位置是 C:\Documents and Settings\username\Adobe Flash Builder\。在 Macintosh 平台上,默認工作空間位置為 /Users/username/Adobe Flash Builder/。取消選擇“使用默認位置”選項后,可以選擇其它項目位置。

Flex SDK 版本 選擇“默認”或“特定”。還可以單擊“配置 SDK”鏈接,在“首選參數”主頁面上添加、編輯或刪除 SDK。

使用舊版編譯器 對於 ActionScript 項目,Flash Builder 默認使用 Falcon 編譯器。如果你使用的是 Adobe Flex SDK 4.6 或更早版本的 Flex SDK,請選擇“使用舊版編譯器”以使用舊版編譯器。

包括 Adobe AIR 庫 如果你的庫必須使用 AIR 功能(例如訪問 AIR API),請選擇此選項。然后,Flash Builder 會更改該新 ActionScript 庫項目的庫路徑,使該路徑包括 airglobal.swc 和 airframework.swc。 

基於 Web 的 Flex 項目不能使用該庫。如果要編寫的通用庫僅用於基於 Web 的應用程序或者用於基於 Web 或 AIR 的應用程序,請不要選擇此選項。

3. 單擊“下一步”。 

4. (可選)設置構建路徑信息。例如,可以將文件夾添加到包含要包括在 SWC 文件中的組件的項目源路徑中。還可以添加要包括在庫項目中的其它項目、文件夾或庫 SWC 文件。請參閱在項目中使用 SWC 文件。 

5. 輸入完項目設置后,單擊“完成”。

唯一想吐槽的是“設計”視圖的取消。看來Adobe離可視化編程越來越遠了。本來學設計的老師通過設計視圖還能學一點Flash Builder,現在……

最后,要特別說明的是:由於還是Beta版,Flash Builder 4.7目前還不太穩定。如果遇到問題,希望大家少一點責罵,多去這里提交Bug!

而且,作為Beta版,Flash Builder 4.7是可以和Flash Builder 4.6“和平共處”的哦!所以,強烈建議大家先不要卸載你的Flash Builder 4.6!

 

注意,友情提供FB4.7的使用說明書:
http://help.adobe.com/zh_CN/flashbuilder/using/index.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM