데스크톱 AIR 응용 프로그램 디버깅

Flash Builder, Flash Professional, Dreamweaver 등의 IDE를 사용하여 응용 프로그램을 개발하는 경우에는 디버깅 도구가 일반적으로 내장되어 있습니다. 디버그 모드에서 실행함으로써 응용 프로그램을 간단히 디버깅할 수 있습니다. 디버깅을 직접 지원하는 IDE를 사용하고 있지 않은 경우에는 ADL(AIR Debug Launcher) 및 FDB(Flash Debugger)를 사용하여 응용 프로그램 디버깅을 지원할 수 있습니다.

ADL을 사용하여 응용 프로그램 실행

ADL을 사용하여 패키지화하고 설치하지 않고도 AIR 응용 프로그램을 실행할 수 있습니다. 다음 예제에 나온 것처럼 응용 프로그램 설명자 파일을 ADL에 매개 변수로 전달합니다. 이를 위해 먼저 응용 프로그램에 있는 ActionScript 코드를 먼저 컴파일해야 합니다.

adl myApplication-app.xml

ADL은 추적 명령문, 런타임 예외 및 HTML 파싱 오류를 터미널 윈도우에 인쇄합니다. FDB 프로세스가 수신 연결을 대기 중일 경우 ADL은 디버거에 연결합니다.

또한 ADL을 사용하여 기본 확장을 사용하는 AIR 응용 프로그램을 디버깅할 수 있습니다. 예를 들면 다음과 같습니다.

adl -extdir extensionDirs myApplication-app.xml

trace 문 인쇄

trace 문을 ADL 실행에 사용되는 콘솔로 인쇄하려면 trace() 함수를 사용하여 코드에 trace 문을 추가합니다.

참고: trace() 문이 콘솔에 표시되지 않는 경우, mm.cfg 파일에 ErrorReportingEnable 또는 TraceOutputFileEnable 을 지정하지 않았는지 확인하십시오. 이 파일의 플랫폼별 위치에 대한 자세한 내용은 mm.cfg 파일 편집 을 참조하십시오.

ActionScript 예제:

//ActionScript 
trace("debug message"); 

JavaScript 예제:

//JavaScript 
air.trace("debug message");
JavaScript에서는 alert() confirm() 함수를 사용하여 응용 프로그램에서 보내는 디버깅 메시지를 표시할 수 있습니다. 또한 catch되지 않은 JavaScript 예외와 구문 오류의 줄 번호가 콘솔로 인쇄됩니다.
참고: JavaScript 예제에 나오는 air 접두어를 사용하려면 AIRAliases.js 파일을 페이지로 가져와야 합니다. 이 파일은 AIR SDK의 frameworks 디렉토리에 있습니다.

Flash Debugger(FDB)에 연결

Flash Debugger를 사용하여 AIR 응용 프로그램을 디버깅하려면 FDB 세션을 시작한 다음 ADL을 사용하여 응용 프로그램을 시작합니다.

참고: SWF 기반 AIR 응용 프로그램에서는 ActionScript 소스 파일을 -debug 플래그로 컴파일해야 합니다. Flash Professional에서는 [제작 설정] 대화 상자에서 [디버깅 허용] 옵션을 선택합니다.
  1. FDB를 시작합니다. FDB 프로그램은 Flex SDK의 bin 디렉토리에서 찾을 수 있습니다.

    콘솔은 FDB 프롬프트인 <fdb> 를 표시합니다.

  2. run 명령 <fdb>run [Enter] 를 실행합니다.

  3. 다른 명령 또는 셸 콘솔에서 해당 응용 프로그램의 디버그 버전을 시작합니다.

    adl myApp.xml
  4. FDB 명령을 사용하여 원하는 중단점을 설정합니다.

  5. continue [Enter] 를 입력합니다.

AIR 응용 프로그램이 SWF 기반인 경우 디버거는 ActionScript 코드의 실행만 제어합니다. AIR 응용 프로그램이 HTML 기반인 경우에는 디버거가 JavaScript 코드의 실행만 제어합니다.

디버거에 연결하지 않고 ADL을 실행하려면 -nodebug 옵션을 포함합니다.

adl myApp.xml -nodebug

FDB 명령에 대한 기본 정보를 보려면 help 명령을 실행합니다.

<fdb>help [Enter]

FDB 명령에 대한 자세한 내용은 Flex 설명서의 명령줄 디버거 명령 사용 을 참조하십시오.