Adobe AIR (также известный как Adobe Integrated Runtime и под кодовым названием Apollo ) — кроссплатформенная система выполнения , в настоящее время разрабатываемая Harman International в сотрудничестве с Adobe Inc. для создания настольных приложений и мобильных приложений , программируемых с использованием Adobe Animate , ActionScript и опционально Apache Flex . Первоначально он был выпущен в 2008 году. Среда выполнения поддерживает устанавливаемые приложения на Windows , macOS и мобильные операционные системы, включая Android , iOS и BlackBerry Tablet OS .
AIR — это среда выполнения, которая позволяет программистам Adobe Animate и ActionScript 3.0 создавать приложения и видеоигры, которые запускаются как автономные исполняемые файлы и ведут себя аналогично нативным приложениям на поддерживаемых платформах. Приложение HTML5 , используемое в браузере, не требует установки, в то время как приложения AIR требуют установки из файла установщика (Windows и OS X) или соответствующего App Store (iOS и Android). Приложения AIR имеют неограниченный доступ к локальному хранилищу и файловым системам , в то время как приложения на основе браузера имеют доступ только к отдельным файлам, выбранным пользователями. [8]
AIR внутренне использует общую кодовую базу с движком рендеринга Flash Player и ActionScript 3.0 в качестве основного языка программирования. Приложения должны быть специально созданы для AIR, чтобы использовать дополнительные предоставляемые функции, такие как multi-touch , интеграция с файловой системой, собственные клиентские расширения, интеграция с Taskbar или Dock и доступ к акселерометру и устройствам GPS . [9] Приложения HTML5 могут работать на движке WebKit , включенном в AIR.
Известные приложения, созданные с помощью Adobe AIR, включают eBay Desktop, Pandora One desktop, [10] [11] TweetDeck , [12] бывший Adobe Media Player , [12] Angry Birds , [13] и Machinarium , [14] среди других приложений для мультимедиа и управления задачами. [15] По данным Adobe, на AIR было создано более 100 000 уникальных приложений, и по состоянию на май 2014 года пользователи по всему миру установили более 1 миллиарда таких приложений. [16] [17] Adobe AIR был признан лучшим продуктом для разработки мобильных приложений на выставке бытовой электроники в течение двух лет подряд (CES 2014 и CES 2015). [18] [19]
В июне 2019 года Adobe объявила, что начнет передачу текущей поддержки и разработки Adobe AIR в Harman . Adobe продолжит оказывать поддержку версиям 32 и более ранним до конца 2020 года, поскольку поддержка будет управляться Harman. [20]
Используя AIR, разработчики могут получить доступ к таким функциональным возможностям, как текст , векторная графика , растровая графика , видео , аудио , камера и микрофон . AIR также включает в себя дополнительные функции, такие как интеграция с файловой системой, собственные клиентские расширения, интеграция с рабочим столом и доступ к подключенным устройствам. AIR позволяет приложениям работать с данными различными способами, включая использование локальных файлов, локальных баз данных SQLite (для которых AIR имеет встроенную поддержку), сервера баз данных или зашифрованного локального хранилища, включенного в AIR.
Разработчики могут получить доступ к дополнительным функциям, создав собственные расширения AIR, которые могут получить доступ ко всем функциям устройства, программируемым на родном языке. [21]
На настольных платформах AIR поддерживает:
На мобильных платформах AIR поддерживает множество функций мобильного оборудования:
В 2011 году добавление Stage3D позволило приложениям AIR получать доступ к графическим процессорам для аппаратного ускорения. Было разработано несколько сторонних фреймворков для расширения функциональности Stage3D, включая Starling Framework и Away3D . Эти фреймворки также совместимы с AIR и обеспечивают существенные улучшения производительности приложений AIR, опубликованных для мобильных устройств.
Приложения AIR могут быть расширены функциональностью с использованием AIR Native Extensions (ANE). Нативные расширения — это библиотеки подключаемого кода, которые содержат нативный код, упакованный в API ActionScript, [34] позволяя разработчикам получать доступ к нативным функциям, которые иначе не могут быть использованы в AIR, например, Apple Game Center или Google Cloud Messaging.
Собственные расширения может разрабатывать любой человек, используя общедоступные инструменты; [35] некоторые из них распространяются бесплатно или даже как программы с открытым исходным кодом, в то время как другие продаются на коммерческой основе. [36]
Нативные расширения могут быть запрограммированы на родном языке на каждой платформе, что позволяет получить доступ к полному набору API платформы, предоставленному разработчиком. ( C++ для Windows, Java и C++ для Android, Objective-C для iOS). [21]
AIR — это кроссплатформенная технология, и приложения AIR можно перепаковать с небольшими изменениями или вообще без них для многих популярных настольных и мобильных платформ. Для каждой платформы существуют различные варианты установки.
Приложения AIR могут быть опубликованы с или без среды выполнения AIR. Приложения, упакованные с помощью среды выполнения AIR, имеют больший размер файла и известны как приложения «captive runtime». [37] Если среда выполнения не встроена в приложение, ее необходимо установить отдельно.
В январе 2009 года Adobe заявила, что во всем мире было установлено более 100 миллионов Adobe AIR, и что «большинство установок среды выполнения AIR происходит в момент установки пользователем первого приложения AIR». [38] В мае 2014 года Adobe заявила, что на AIR было создано более 100 000 уникальных приложений, и было зарегистрировано более 1 миллиарда установок этих приложений пользователями по всему миру. [16] [17]
Adobe AIR версии 32 содержит Adobe Flash Player 32 и доступен для Windows 7 и более поздних версий, а также OS X 10.9 и более поздних версий. [6] Дистрибутивы Linux для настольных компьютеров были доступны до июня 2011 года с версией 2.6, которая завершила поддержку Linux. [39]
Приложения Adobe AIR могут быть опубликованы как собственные приложения для телефонов на некоторых мобильных операционных системах, таких как Android (ARM Cortex-A8 и выше [40] ) и Apple iOS. [41] В мае 2017 года Adobe прекратила выпуск AIR для Android, и приложение было удалено из Play Store в сентябре 2018 года, но его все еще можно загрузить через их веб-сайт. [42] После перехода Adobe AIR в Harman, они возобновили поддержку Android, и последняя версия доступна только там. [3]
В следующей таблице объясняется, в какой степени Adobe AIR может работать на различных мобильных операционных системах :
AIR запускает приложения в пределах содержащегося экземпляра Flash Player . Он запускает веб-приложения через механизм рендеринга WebKit . Несколько экземпляров браузера могут быть запущены в одном приложении AIR, но содержимое JavaScript выполняется с некоторыми ограничениями безопасности.
AIR не обеспечивает прямого доступа к собственным элементам GUI, таким как панели навигации или элементы управления. Для доступа к дополнительным собственным ресурсам можно использовать собственные расширения.
AIR SDK доступен в виде бесплатной автономной загрузки для разработчиков программного обеспечения для создания приложений AIR. [57] Пользователям SDK не нужно устанавливать какое-либо коммерческое программное обеспечение для использования SDK, хотя доступно несколько вариантов. Приложения AIR можно скомпилировать из командной строки с помощью компилятора AIR, включенного в SDK; компилятор также можно вызвать из IDE, чтобы исключить необходимость в командной строке.
AIR также можно использовать с Adobe Flex . [58] Flex — это интегрированная коллекция стилизованного графического пользовательского интерфейса , обработки данных и сетевых компонентов, а приложения, созданные на его основе, известны как приложения «Flex». Графические интерфейсы Flex определяются в MXML, аналогично тому, как Android и Microsoft Visual Studio определяют графические интерфейсы; однако Flex не предоставляет доступа к собственным компонентам графического интерфейса.
Приложения AIR, созданные без фреймворка Flex, обеспечивают большую гибкость и производительность и известны как приложения «чистого ActionScript». [59] [60] [61] Видеоигры, созданные на платформе AIR, обычно являются проектами чистого ActionScript. Для проектов чистого ActionScript доступны различные фреймворки компонентов с открытым исходным кодом, такие как MadComponents , которые предоставляют компоненты пользовательского интерфейса при значительно меньших размерах файлов SWF. [62] [63]
Adobe распространяет три коммерческих программных продукта для разработки приложений AIR на ActionScript:
Также доступны сторонние среды разработки, ориентированные на среду выполнения AIR, в том числе:
Adobe Flash Builder — это первоклассный инструмент для разработки приложений Flex, поскольку он включает в себя интегрированный конструктор пользовательского интерфейса с функцией перетаскивания , которого нет в конкурирующих инструментах, таких как FlashDevelop. [64]
Adobe предоставляет возможность разработки AIR, HTML5 и JavaScript с помощью Adobe Dreamweaver CS5, хотя можно использовать любой другой редактор HTML или текстовый редактор. [65]
AIR может запускать подмножество JavaScript, без возможности динамического выполнения кода при запуске в изолированной программной среде приложения. По словам Adobe, это ограничение призвано предотвратить атаку вредоносного удаленного контента на систему пользователя. [66] Из-за этого ограничения фреймворки JavaScript, которые используют динамические функции JavaScript, такие как eval(), изначально не были совместимы с AIR. Однако несколько фреймворков, включая Dojo Toolkit , [ требуется цитата ] jQuery , [ требуется цитата ] и ExtJS [ требуется цитата ] были обновлены для запуска в изолированной программной среде приложения AIR. Некоторые фреймворки, такие как MooTools, уже были совместимы. [ требуется цитата ]
Dreamweaver CS4/CS3 требует дополнительного расширения для компиляции приложений AIR [67] , как и Flash CS3 в виде обновления. [68]
33 теперь выпускается на коммерческой основе и поддерживает 64-разрядные устройства Android и последние требования Play Store.
больше не будем выпускать собственные версии Adobe AIR и AIR SDK для настольного Linux, но ожидаем, что один или несколько наших партнеров сделают это. Последний выпуск Adobe AIR для настольного Linux — AIR 2.6. Сосредоточившись на наборе для портирования и поддержке партнерских реализаций, мы рассчитываем обеспечить более широкую поддержку AIR на ПК и устройствах на базе Linux, в то время как наши собственные выпуски Linux для настольных компьютеров составили менее 0,5% загрузок AIR за все время.
Adobe AIR 1.5 для Flash CS4 Professional