使用手冊 取消

ActionScript 3.0 的除錯

 

關於 ActionScript 3.0 除錯程式

Animate 包括不同的 ActionScript 3.0 除錯程式,其運作方式與 ActionScript 2.0 除錯程式不同。ActionScript 3.0 除錯程式只適用於 ActionScript 3.0 FLA 和 AS 檔案。FLA 檔案必須有將發佈設定設為 Flash Player 9。當您起始 ActionScript 3.0 除錯工作階段時,Animate 會啟動獨立的 Flash Player 除錯程式版本來播放 SWF 檔案。Flash Player 除錯程式會在與 Animate 編寫應用軟體視窗不同的視窗中播放 SWF 檔案。

ActionScript 3.0 除錯程式會將 Animate 工作區轉換為除錯工作區,後者會顯示用於除錯的面板,其中還包括「動作」面板及/或指令碼視窗、「除錯主控台」和「變數」面板。「除錯主控台」會顯示呼叫堆疊,並包含用於逐步執行指令碼的工具。 「變數」面板會在目前範圍中顯示變數與變數值,並可讓您自行更新這些值。

額外的資源

下列資源提供有關 ActionScript 3.0 除錯的額外詳細資訊:

進入除錯模式

開始除錯工作階段的方式會因目前處理的檔案類型而有所不同。在除錯工作階段期間,如果 Animate 遇到中斷點或執行階段錯誤時,便會中斷 ActionScript 的執行。

當 Animate 起始除錯工作階段時,會將它針對此工作階段所匯出的特殊資訊加入到 SWF 檔案。此資訊可讓除錯程式提供程式碼中發生錯誤的特定行號。

您可以在「發佈設定」中,將此特殊除錯資訊併入到由特定 FLA 檔案所建立的所有 SWF 檔案中。 如此一來,即使您沒有明確起始除錯工作階段,還是可以對 SWF 檔案進行除錯。 不過,此除錯資訊會使 SWF 檔案稍微變大。

選擇預設除錯環境

  • 選擇「除錯 > 影片除錯」,然後選擇下列其中一項:

    • Animate

    • AIR Debug Launcher (桌面)

    • AIR Debug Launcher (行動裝置)

    • 透過 USB 在裝置上 (僅限 CS5.5)

    所有除錯工作階段都會在您選擇的環境中進行。您可以隨時變換預設環境。

從 FLA 檔案開始進行除錯

  1. 選取「除錯 > 除錯」

    (CS6 及更早版本) 選取「除錯 > 影片除錯 > 除錯」。

從 ActionScript 3.0 AS 檔案開始進行除錯

  1. 當 ActionScript 檔案在指令碼視窗中開啟時,從指令碼視窗上方的「目標」選單中,選取應該和 ActionScript 檔案一起編譯的 FLA 檔。 FLA 檔案必須同時開啟,才會出現在此選單中。

  2. 選取「除錯 > 除錯」

    (CS6 及更早版本) 選取「除錯 > 影片除錯 > 除錯」。

將除錯資訊加入所有由 FLA 檔建立的 SWF 檔之中

  1. 開啟 FLA 檔後,選取「檔案 > 發佈設定」。

  2. 在「發佈設定」對話方塊中,按一下索引標籤 (CS5) 或類別 (CS5.5)。

  3. 選取「允許除錯」。

結束除錯模式

  1. 按一下「除錯主控台」中的「結束除錯工作階段」按鈕。

設定和移除中斷點

在 ActionScript 程式碼中加入中斷點,以便中斷程式碼的執行。 在執行中斷後,您可以逐步執行並依行執行程式碼、檢視 ActionScript 的不同區段、檢視變數和運算式的值,以及編輯變數值。

您無法將中斷點加入 ASC (ActionScript for Communication) 或 JSFL (Flash JavaScript) 檔案中。

設定中斷點

  1. 在「動作」面板或指令碼視窗中,按一下某一行程式碼旁邊的左方邊界,這一行程式碼是您希望中斷點出現的位置。

移除中斷點

  1. 在「動作」面板或指令碼視窗中,按一下要移除的中斷點。

逐步執行程式行

在 ActionScript 的執行因中斷點或執行階段錯誤而中斷後,您可以依行逐步執行程式碼。您可以選擇跳入函數呼叫中或是略過。同時也可以選擇要繼續執行程式碼,而不要逐步執行。

依行跳入程式碼行

  1. 按一下「除錯主控台」中的「跳入」按鈕。

略過函數呼叫

  1. 按一下「除錯主控台」中的「略過」按鈕。

跳出函數呼叫

  1. 按一下「除錯主控台」中的「跳出」按鈕。

繼續一般程式碼執行

  1. 按一下「除錯主控台」中的「繼續」按鈕。

顯示並檢查呼叫堆疊中的指令碼

當程式碼的執行在除錯程式中停住時,您可以在「除錯主控台」中檢視呼叫堆疊,並顯示呼叫堆疊中有包含函數的指令碼。 呼叫堆疊會顯示目前正在等候執行完成之巢狀函數呼叫的清單。

您可以檢視含有每個函數的個別指令碼。

  1. 在「除錯主控台」面板中,於呼叫堆疊中按兩下此指令碼的名稱。

顯示並修改變數值

在「變數」面板中檢視及編輯變數和屬性的值。

檢視變數值

  1. 在「變數」面板中,從「面板」選單中選取要顯示的變數類型。

    • 「顯示常數」會顯示常數值 (擁有固定值的變數)。

    • 「顯示統計資料」會顯示屬於類別的變數,而不會顯示屬於類別實體的變數。

    • 「顯示無法存取的成員變數」會顯示無法由其他類別或命名空間所存取的變數, 包含對命名空間具有受保護、私有或內部屬性的變數。

    • 「顯示其他的十六進位顯示」會在每次顯示十進位值時加入十六進位值。 這項功能主要是用在顏色值上。 0 到 9 的十進位值無法以十六進位值來表示。

    • 「顯示限定名稱」會顯示同時包含套件名稱與類別名稱的變數類型。

  2. 逐層展開 FLA 的物件結構樹狀檢視,直到您看到變數為止。

編輯變數值

  1. 在「變數」面板中,連按兩下變數值。

  2. 輸入變數的新值,然後按下 Enter。 新值會用在後續的程式碼執行階段。

控制編譯器警告

在「編譯器錯誤」面板中控制 ActionScript 編譯器所產生的編譯器警告類型。當編譯器回報錯誤時,在該錯誤上按兩下,即可瀏覽到導致錯誤的程式碼行。

  1. 選取「檔案 > 發佈設定」。
  2. 按一下 Animate。

  3. 按一下「ActionScript 設定」按鈕。
  4. 在「錯誤」選項之間進行選取:
    • 「嚴謹模式」會將警告回報為錯誤,這表示如果有這些錯誤存在,就無法成功完成編譯。
    • 「警告模式」會回報額外的警告,這對於找出 ActionScript 2.0 程式碼更新為 ActionScript 3.0 時的不相容問題有很大的幫助。

不管是在編譯期間還是執行期間,當 Animate 遇到 ActionScript 程式碼中的錯誤時,都會在「編譯器錯誤」面板中回報錯誤。從「編譯器錯誤」面板中瀏覽到導致錯誤的程式碼行。

  1. 在「編譯器錯誤」面板中連按兩下該錯誤。

針對遠端 ActionScript 3.0 SWF 檔進行除錯

有了 ActionScript 3.0,您就可以使用 Flash Player 除錯程式的獨立、ActiveX 或外掛程式版本,對遠端 SWF 檔進行除錯,這個版本位於 Animate 安裝目錄/Players/Debug/ 目錄。然而,在 ActionScript 3.0 除錯程式中,遠端除錯作業僅限於與 Animate 編寫應用程式位於相同 localhost,且使用獨立除錯播放程式、ActiveX 控制項,或是外掛程式進行播放的檔案。

若要允許對遠端檔案進行除錯,啟用「發佈設定」中的除錯功能。 您還可以將檔案連同除錯密碼一起發佈,以確保只有受信任的使用者才能對它進行除錯。

和在 JavaScript 或 HTML 中一樣,使用者也可以在 ActionScript 中檢視用戶端變數。 為了要安全地儲存變數,請將變數傳送到伺服器端應用程式,而非將其儲存在檔案中。 不過,身為開發人員,您可能有其他不想要公開的商業秘密 (如影片片段結構), 就可以使用除錯密碼來保護您的工作。

啟用 SWF 檔案的遠端除錯,並設定除錯密碼

在 ActionScript 3.0 FLA 檔中,無法針對影格指令碼中的程式碼進行除錯, 只有外部 AS 檔案的程式碼可以使用 ActionScript 3.0 除錯程式進行除錯。

  1. 儲存 FLA 檔案。

  2. 選取「檔案 > 發佈設定」。

  3. 在「發佈設定」對話方塊中,按一下索引標籤 (CS5) 或類別 (CS5.5),然後選取「允許除錯」。

  4. 關閉「發佈設定」對話方塊,然後選取下列其中一個命令:

    • 「檔案 > 匯出 > 匯出影片」

    • 「檔案 > 發佈」

  5. 將 SWF 檔保留在本機,以便在 localhost 上執行遠端除錯工作階段或是將之上傳到網站伺服器中。

    SWF 檔未包含任何中斷點資訊,因此假如您將檔案上傳到遠端伺服器,將無法逐步執行程式碼。 使用 localhost 來執行此工作。

  6. 在 Animate 中,選取「除錯 > 開始遠端除錯工作階段 > ActionScript 3.0」。

    Animate 會開啟 ActionScript 3.0 除錯程式並等候 Flash Player 除錯程式進行連接。這時候您有兩分鐘的時間可以啟動 Flash Player 除錯程式。 如果超過兩分鐘,請重複此步驟。

  7. 在 Flash Player 外掛程式、ActiveX 控制項,或是獨立播放程式的除錯程式版本中開啟 SWF 檔。除錯程式的獨立播放程式位於 Animate 安裝目錄/Players/Debug/ 目錄中。請勿將檔案連接到另一部機器上,因為這樣一來除錯程式將無法收到任何中斷點資訊。

    當除錯播放程式連接到 ActionScript 3.0 的「除錯程式」面板時,就會開始除錯工作階段。

    如果您選擇 AIR 3.4 的預設網路介面,遠端除錯就無法運作。相反地,選取這些選項可以提供系統的網路介面名稱和 IP 位址。

從遠端位置啟動除錯程式

  1. 如果 Animate 編寫應用程式尚未開啟,請現在開啟它。

  2. 選取「除錯 > 開始遠端除錯工作階段 > ActionScript 3.0」。

  3. 在瀏覽器或單獨的 Flash Player 除錯程式版本中,從遠端位置開啟已發佈的 SWF 檔。

    如果沒有出現「遠端除錯」對話方塊,請在 SWF 檔案中按一下右鍵 (Windows) 或 Control + 按一下 (Macintosh) 以顯示快顯選單,然後選取「除錯程式」。

  4. 在「遠端除錯」對話方塊中,選取「Localhost」,然後選取要開啟的檔案。

    「除錯程式」中便會出現 SWF 檔案的顯示清單。 如果 SWF 檔案沒有播放,「除錯程式」可能處於暫停狀態,所以請按一下「繼續」開始播放。

更快、更輕鬆地獲得協助

新的使用者?