Flex-デバッグアプリケーション

Flexは、Flexコードをデバッグする優れた機能を提供し、Flash Builder 4には、優れたデバッガーとデバッグパースペクティブのサポートが組み込まれています。

  • デバッグモード中、Flex Applicationは、デバッグ機能をサポートするFlash Builder4に組み込まれているFlashPlayerDebuggerバージョンで実行されます。

  • そのため、開発者はFlashBuilderで簡単で組み込みのデバッグ構成を取得できます

この記事では、FlashBuilderを使用してFlexClientコードをデバッグする方法を示します。次のタスクを実行します

  • コードでブレークポイントを設定し、ブレークポイントエクスプローラーで確認します。
  • デバッグ中にコードを1行ずつステップスルーします。
  • 変数の値を表示します。
  • すべての変数の値を調べます。
  • 式の値を調べます。
  • 中断されたスレッドのスタックフレームを表示します。

デバッグ例

ステップ 説明
1 Flex-アプリケーションの作成の章で説明されているように、パッケージcom.tutorialspoint.clientの下にHelloWorldという名前のプロジェクトを作成します
2 以下で説明するように、HelloWorld.mxmlを変更します。残りのファイルは変更しないでください。
3 アプリケーションをコンパイルして実行し、ビジネスロジックが要件に従って機能していることを確認します。

以下は、変更されたmxmlファイルの内容です。 src/com.tutorialspoint/HelloWorld.mxml

<?xml version = "1.0" encoding = "utf-8"?>
<s:Application xmlns:fx = "http://ns.adobe.com/mxml/2009" 
   xmlns:s = "library://ns.adobe.com/flex/spark" 
   xmlns:mx = "library://ns.adobe.com/flex/mx"
   width = "100%" height = "100%"
   minWidth = "500" minHeight = "500" 
   initialize = "application_initializeHandler(event)">
   
   <fx:Style source = "/com/tutorialspoint/client/Style.css" />
   <fx:Script>
      <![CDATA[
         import mx.controls.Alert;
         import mx.events.FlexEvent;
         protected function btnClickMe_clickHandler(event:MouseEvent):void {
            Alert.show("Hello World!");
         }

         protected function application_initializeHandler(event:FlexEvent):void {
            lblHeader.text = "My Hello World Application";
         }
      ]]>
   </fx:Script>

   <s:BorderContainer width = "500" height = "500" id = "mainContainer"
      styleName = "container">
      <s:VGroup width = "100%" height = "100%" gap = "50" horizontalAlign = "center"
         verticalAlign = "middle">
         <s:Label id = "lblHeader" fontSize = "40" color = "0x777777"
            styleName = "heading" />
         <s:Button label = "Click Me!" id = "btnClickMe"
            click = "btnClickMe_clickHandler(event)" styleName = "button" />
      </s:VGroup>
   </s:BorderContainer>
</s:Application>

すべての変更を行う準備ができたら、Flex-アプリケーションの作成の章で行ったように通常モードでコンパイルします。

ステップ1-ブレークポイントを配置する

アプリケーションの最初の行にブレークポイントを配置し、HelloWorld.mxmlのハンドラーを初期化します。

ステップ2-アプリケーションをデバッグする

次に、[

アプリケーションのデバッグ]メニューをクリックして、[HelloWorld アプリケーションをデバッグするためのアプリケーション。

すべてが正常な場合、アプリケーションはブラウザーで起動し、FlashBuilderコンソールに次のデバッグログが表示されます。

[SWF] \HelloWorld\bin-debug\HelloWorld.swf 
- 181,509 bytes after decompression
[SWF] \HelloWorld\bin-debug\HelloWorld.swf\[[DYNAMIC]]\1 
- 763,122 bytes after decompression
[SWF] \HelloWorld\bin-debug\HelloWorld.swf\[[DYNAMIC]]\2 
- 1,221,837 bytes after decompression
[SWF] \HelloWorld\bin-debug\HelloWorld.swf\[[DYNAMIC]]\3 
- 1,136,788 bytes after decompression
[SWF] \HelloWorld\bin-debug\HelloWorld.swf\[[DYNAMIC]]\4 
- 2,019,570 bytes after decompression
[SWF] \HelloWorld\bin-debug\HelloWorld.swf\[[DYNAMIC]]\5 
- 318,334 bytes after decompression

アプリケーションが起動するとすぐに、application_initialize Handlerメソッドの最初の行にブレークポイントを配置したため、FlashBuilderブレークポイントにフォーカスが表示されます。

中断されたスレッドのスタックトレースを確認できます。

式の値を確認できます。

配置されたブレークポイントのリストを確認できます。

ここで、application_initializeHandler()メソッドの最後の行に到達するまでF6を押し続けます。ファンクションキーのリファレンスとして、F6はコードを1行ずつ検査し、F5はさらに内側に進み、F8はアプリケーションを再開します。これで、application_initializeHandler()メソッドのすべての変数の値のリストが表示されます。

これで、Javaアプリケーションをデバッグするのと同じ方法でフレックスコードをデバッグできることがわかります。任意の行にブレークポイントを配置し、flexのデバッグ機能を試してみてください。