Flex-debug-application

提供:Dev Guides
移動先:案内検索

フレックス-アプリケーションのデバッグ

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

  • デバッグモードでは、Flexアプリケーションは、デバッグ機能をサポートするFlash Builder 4に組み込まれたFlash Player Debuggerバージョンで実行されます。
  • そのため、開発者はFlash Builderで簡単で組み込みのデバッグ構成を取得できます。

この記事では、Flash Builderを使用してFlexクライアントコードをデバッグする使用方法を示します。 次のタスクを実行します

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

デバッグの例

Step Description
1 Create a project with a name HelloWorld under a package com.finddevguides.client as explained in the Flex - Create Application chapter.
2 Modify HelloWorld.mxml as explained below. Keep rest of the files unchanged.
3 Compile and run the application to make sure business logic is working as per the requirements.

以下は、変更されたmxmlファイル src/com.finddevguides/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/finddevguides/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>

すべての変更が完了したら、link:/flex/flex_create_application [Flex-アプリケーションの作成]の章で行ったように、通常モードでコンパイルしてみましょう。

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

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

Flex適用ブレークポイント

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

アプリケーションのデバッグアプリケーションメニューのデバッグをクリックし、 HelloWorld アプリケーションを選択してアプリケーションをデバッグします。

フレックスデバッグボタン

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

[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メソッドの最初の行にブレークポイントを配置すると、アプリケーションが起動するとすぐに、Flash Builderブレークポイントにフォーカスが表示されます。

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

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

Flex Debug Stacktrace

式の値を確認できます。

Flexデバッグ式

配置されたブレークポイントのリストを見ることができます。

Flexデバッグブレークポイント

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

Flexデバッグ変数

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