Adobe AIR (также известный как Adobe Integrated Runtime и под кодовым названием Apollo ) — кроссплатформенная система времени выполнения , в настоящее время разрабатываемая Harman International в сотрудничестве с Adobe Inc. для создания настольных и мобильных приложений , программируемых с использованием Adobe Animate , ActionScript и, опционально, Апач Флекс . Первоначально он был выпущен в 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, чтобы использовать дополнительные предоставляемые функции, такие как мультитач , интеграция файловой системы, собственные клиентские расширения, интеграция с панелью задач или Dock , а также доступ к акселерометру и устройствам GPS . [9] Приложения HTML5 могут работать на движке WebKit , включенном в AIR.
Известные приложения, созданные с помощью Adobe AIR, включают eBay Desktop, настольный компьютер Pandora One , [10] [11] TweetDeck , [12] бывший Adobe Media Player , [12] Angry Birds , [13] и Machinarium , [14] среди других мультимедийных и приложения для управления задачами. [15] По данным Adobe, по состоянию на май 2014 года на базе AIR было создано более 100 000 уникальных приложений, и по состоянию на май 2014 года было зарегистрировано более 1 миллиарда их установок от пользователей по всему миру. [16] [17] Adobe AIR был признан лучшим Лучший продукт для разработки мобильных приложений на выставке Consumer Electronics Show два года подряд (CES 2014 и CES 2015). [18] [19]
В июне 2019 года Adobe объявила, что начнет перевод постоянной поддержки и разработки Adobe AIR на Harman . Adobe продолжит предоставлять поддержку версий 32 и более ранних до конца 2020 года, поскольку поддержкой будет управлять Harman. [20]
Используя AIR, разработчики могут получить доступ к таким функциям, как текст , векторная графика , растровая графика , видео , аудио , камера и микрофон . AIR также включает дополнительные функции, такие как интеграция файловой системы, собственные клиентские расширения, интеграция с настольными компьютерами и доступ к подключенным устройствам. AIR позволяет приложениям работать с данными различными способами, включая использование локальных файлов, локальных баз данных SQLite (для которых AIR имеет встроенную поддержку), сервера баз данных или зашифрованного локального хранилища, включенного в AIR.
Разработчики могут получить доступ к дополнительным функциям, создав расширения AIR Native Extensions, которые обеспечивают доступ ко всем функциям устройства, программируемого на родном языке. [21]
На настольных платформах AIR поддерживает:
На мобильных платформах AIR поддерживает множество функций мобильного оборудования:
В 2011 году добавление Stage3D позволило приложениям AIR получать доступ к графическим процессорам для аппаратного ускорения. На базе функциональности Stage3D было разработано несколько сторонних фреймворков, включая Starling Framework и Away3D . Эти платформы также совместимы с AIR и обеспечивают существенное повышение производительности приложений AIR, опубликованных для мобильных устройств.
Функциональность приложений AIR можно расширить с помощью собственных расширений AIR (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, имеют больший размер файла и известны как приложения «связанной среды выполнения». [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, а в сентябре 2018 года приложение было удалено из Play Store, но его по-прежнему можно загрузить через их веб-сайт. [42] После перехода Adobe с AIR на Harman они возобновили поддержку Android, и последняя версия доступна только там. [3]
В следующей таблице объясняется, в какой степени Adobe AIR может работать в различных мобильных операционных системах :
AIR запускает приложения внутри отдельного экземпляра Flash Player . Он запускает веб-приложения через механизм рендеринга WebKit . В одном приложении AIR можно запустить несколько экземпляров браузера, но содержимое JavaScript выполняется с некоторыми ограничениями безопасности.
AIR не обеспечивает прямой доступ к собственным элементам графического интерфейса, таким как панели навигации или элементы управления. Собственные расширения можно использовать для доступа к дополнительным собственным ресурсам.
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]
AIR 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