web-dev-qa-db-ja.com

フレックスアプリケーションを開発するときにコンソールにログを出力するにはどうすればよいですか?

私はflexを初めて使用し、いくつかのデモアプリケーションを作成しようとしています。今、私は非常に初心者の質問があります:フレックスアプリケーションでコンソール(または私が見ることができる他の場所)にログを出力する方法は?

他の言語では、私は使用することができます:

System.out.println("mylog");
console.log("mylog");

しかし、私はフレックスで同じことをする方法がわかりません。

13
Freewind

ここにはいくつかのオプションがあります。

15
Florent

前述のように here を使用すると、これを実現できます

import flash.external.ExternalInterface;
ExternalInterface.call("console.log", "YourString");
28
sleepycal

最も簡単な方法は、トップレベルの関数である「トレース」を使用することです。これは、IDEとFlash Debug Playerを実行することで使用できます。別の解決策は、Thunderboltロガーです。

1

私は、クラスごとに有効化および無効化できる「TTrace」と呼ばれるクラス固有のトレーサーを好みます。また、作成する各関数の1行目にも記述します。ストーリーをたどることで、クライアントからのエラーを再現できないリモートデバッグを回避できることがよくあります。次に、ttraceを有効または無効にして、出力をクリーンアップし、更新または修正する領域で有効にすることができます。

SVN: https://code.google.com/p/darceys-as3-components/

Zip: http://code.google.com/p/darceys-as3-components/downloads/list

TTraceを使用するには

  // var definition
  private var t:Ttrace;

  // Inside constructor
  t = new Ttrace(true,"",true,false,"Debug console title",600,300);
  t.ttrace("hello");
  addChild(t);


  // Var dump
  t.ttrace("myvar = " + myVar);

  // Warning
  t.warn("warning");

  // Error
  t.error("An error has occured in .......");

Parmatersは次のとおりです。

  Ttrace(
        enabled:Boolean,
        applicationName:String="",
        useDebugBox:Boolean=false,
        debugBoxVisible:Boolean=true,
        debugBoxTitle:String="",
        debugBoxWidth:Number=800,
        debugBoxHeight:Number=400

1
Darcey