На схеме ниже показано, как связаны среда JavaScript и рабочая среда AIR. Хотя показано только одно исходное окно, в приложении AIR может содержаться несколько. (А в одном окне может содержаться несколько объектов HTMLLoader.)
Полноразмерное изображение
В среде JavaScript есть собственные объекты Document и Window. Код JavaScript может общаться со средой выполнения AIR с помощью свойств runtime, nativeWindow и htmlLoader. Код ActionScript может взаимодействовать со средой JavaScript с помощью свойства window
объекта HTMLLoader, являющегося ссылкой на объект Window языка JavaScript. Кроме того, и объекты ActionScript, и объекты JavaScript могут прослушивать события, отправляемые объектами AIR и JavaScript.
Свойство
runtime
предоставляет доступ к классам API-интерфейса AIR для создания новых объектов AIR и членов классов доступа (также называемых статическими). Для доступа к API-интерфейсу AIR необходимо добавить в свойство
runtime
имя класса (вместе с именем пакета). Например, для создания объекта File будет использоваться следующая инструкция:
var file = new window.runtime.filesystem.File();
Примечание.
AIR SDK содержит файл JavaScript
AIRAliases.js
, в котором задаются удобные псевдонимы для большинства классов AIR. При импорте этого файла вместо window.runtime.package.Class можно использовать более короткую форму air.Class. Например, можно создать объект File с помощью метода
new air.File()
.
Объект NativeWindow предоставляет свойства для управления окном рабочего стола. С HTML-страницы с помощью свойства
window.nativeWindow
можно получать доступ к объекту-контейнеру NativeWindow.
Объект HTMLLoader предлагает свойства, методы и события для управления загрузкой и визуализацией содержимого. С HTML-страницы с помощью свойства
window.htmlLoader
можно получать доступ к родительскому объекту HTMLLoader.
Важная информация.
Свойства
htmlLoader
,
nativeWindow
и
runtime
могут быть только у страниц, установленных как часть приложения, и только когда они загружаются в качестве документов верхнего уровня. Эти свойства не добавляются, когда документ загружается в обычный или встроенный фрейм. (Дочерний документ также имеет доступ к этим свойствам в родительском документе, пока оба находятся в одной и той же изолированной программной среде.) Например, документ, загруженный во фрейм, может получать доступ к свойству
runtime
своего родителя через
parent.runtime
).