다음 다이어그램에서는 JavaScript 환경과 AIR 런타임 환경 간의 관계를 보여 줍니다. 여기에는 하나의 기본 윈도우만 표시되어 있지만 AIR 응용 프로그램에는 여러 윈도우가 포함될 수 있습니다. 그리고 단일 윈도우에 여러 HTMLLoader 객체가 포함될 수 있습니다.
전체 화면으로 그래픽 보기
JavaScript 환경에는 고유의 Document 및 Window 객체가 있습니다. JavaScript 코드는 runtime, nativeWindow 및 htmlLoader 속성을 통해 AIR 런타임 환경과 상호 작용할 수 있습니다. ActionScript 코드는 JavaScript Window 객체를 참조하는 HTMLLoader 객체의 window
속성을 통해 JavaScript 환경과 상호 작용할 수 있습니다. 또한 ActionScript 및 JavaScript 객체 모두 AIR 및 JavaScript 객체를 통해 전달된 이벤트를 수신할 수 있습니다.
runtime
속성을 사용하여 AIR API 클래스에 액세스할 수 있으므로 새 AIR 객체 및 액세스 클래스(정적이라고도 함) 멤버를 만들 수 있습니다. AIR API에 액세스하려면 클래스 이름을 패키지와 함께
runtime
속성에 추가합니다. 예를 들어 File 객체를 만들려면 다음 명령문을 사용합니다.
var file = new window.runtime.filesystem.File();
참고:
AIR SDK에서는 가장 일반적으로 사용되는 AIR 클래스에 대한 더욱 간편한 별칭을 정의하는 JavaScript 파일
AIRAliases.js
를 제공합니다. 이 파일을 가져올 때 window.runtime.package.Class 대신 더 짧은 형식인 air.Class를 사용할 수 있습니다. 예를 들어
new air.File()
을 사용하여 File 객체를 만들 수 있습니다.
NativeWindow 객체는 데스크톱 윈도우를 제어하기 위한 속성을 제공합니다. HTML 페이지 내에서
window.nativeWindow
속성을 사용하여 포함하는 NativeWindow 객체에 액세스할 수 있습니다.
HTMLLoader 객체는 내용을 로드하고 렌더링하는 방법을 제어하기 위한 속성, 메서드 및 이벤트를 제공합니다. HTML 페이지 내에서
window.htmlLoader
속성을 사용하여 부모 HTMLLoader 객체에 액세스할 수 있습니다.
중요:
응용 프로그램의 일부로 설치된 페이지에만
htmlLoader
,
nativeWindow
또는
runtime
속성이 있으며 최상위 문서로 로드된 경우에만 이러한 속성이 포함됩니다. 문서가 프레임 또는 iframe으로 로드되는 경우에는 이러한 속성이 추가되지 않습니다. 자식 문서는 동일한 보안 샌드박스에 있는 경우에만 부모 문서에 있는 이러한 속성에 액세스할 수 있습니다. 예를 들어 프레임에 로드된 문서는
parent.runtime
을 사용하여 부모의
runtime
속성에 액세스할 수 있습니다
.