Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Apache Cordova (ранее PhoneGap ) - это среда разработки мобильных приложений, созданная Nitobi . Adobe Systems приобрела Nitobi в 2011 году, переименовала его в PhoneGap, а позже выпустила версию программного обеспечения с открытым исходным кодом под названием Apache Cordova. [7] Apache Кордова позволяет программное обеспечение программистов для создания гибридных веб - приложений для мобильных устройств с помощью CSS3 , HTML5 и JavaScript , вместо того , чтобы полагаться на платформы конкретного API , как и в Android , IOS , или Windows Phone. [8] Это позволяет обертывать код CSS, HTML и JavaScript в зависимости от платформы устройства. Он расширяет возможности HTML и JavaScript для работы с устройством. Полученные в результате приложения являются гибридными, что означает, что они не являются ни по-настоящему родными мобильными приложениями (потому что весь рендеринг макетов выполняется через веб-представления вместо собственной инфраструктуры пользовательского интерфейса платформы), ни чисто веб-приложениями (потому что они не просто веб-приложения, а упакованы в качестве приложений для распространения и имеют доступ к собственным API устройств). Смешивание фрагментов нативного и гибридного кода стало возможным с версии 1.9.

Программное обеспечение раньше называлось просто «PhoneGap», а затем «Apache Callback». [9] [10] В качестве программного обеспечения с открытым исходным кодом Apache Cordova допускает использование оболочек, таких как Appery.io или Intel XDK .

PhoneGap была коммерческой версией Adobe Cordova вместе с связанной с ней экосистемой. Многие другие инструменты и механизмы также построены на вершине Кордовы, в том числе ионического , [11] Monaca , VoltBuilder , TACO , Onsen интерфейс, Visual Studio, GapDebug, App Builder, кокон, Framework7 , Quasar Framework , Evothings Studio, NSB / AppStudio, Mobiscroll, то Intel XDK , [12] и Telerik платформы . [13] Эти инструменты используют Cordova, а не PhoneGap в качестве основных инструментов.

В число участников проекта Apache Cordova входят Adobe , BlackBerry , Google , IBM , Intel , Microsoft , Mozilla и другие. [14]

История [ править ]

Впервые разработанный на мероприятии iPhoneDevCamp в Сан-Франциско [15], PhoneGap получил награду People's Choice Award на конференции O'Reilly Media 2009 Web 2.0 [16] , [16] и этот фреймворк использовался для разработки многих приложений. [17] Apple Inc. подтвердила, что структура получила одобрение, даже с изменением пункта 3.3.1 лицензионного соглашения разработчика Apple iPhone SDK 4.0, принятого в 2010 году. [18] Структура PhoneGap используется несколькими платформами мобильных приложений. такие как Monaca , [19] appMobi , [20] Convertigo, [21] [22] ViziApps , [23]и Worklight [24] [25] в качестве основы их механизма разработки мобильных клиентов.

Adobe официально объявила о приобретении Nitobi Software (первоначального разработчика) 4 октября 2011 года. [26] Одновременно с этим, код PhoneGap был передан Apache Software Foundation для запуска нового проекта под названием Apache Cordova. Первоначальное название проекта, Apache Callback, было сочтено слишком общим. [27] Затем он также появляется в Adobe Systems как Adobe PhoneGap и также как Adobe PhoneGap Build . [28] Блог Phonegap показывает более подробную информацию, почему в итоге было выбрано название «Кордова». В нем говорится: «Хотя истории происхождения PhoneGap часто меняются в зависимости от кассира, большинство участников соглашаются, что проект родился в Nitobi, когда офис находился на улице Кордова в Ванкувере».[29] [30]

Ранние версии PhoneGap требовали компьютера Apple для создания приложений iOS и компьютера Windows для создания приложений Windows Mobile. После сентября 2012 года служба Adobe PhoneGap Build позволяет программистам загружать исходный код CSS , HTML и JavaScript в « облачный компилятор », который генерирует приложения для каждой поддерживаемой платформы. [31]

Дизайн и обоснование [ править ]

Ядро приложения Apache Cordova использует CSS3 и HTML5 для рендеринга и JavaScript для логики. HTML5 обеспечивает доступ к базовому оборудованию, такому как акселерометр, камера и GPS . Однако поддержка браузерами доступа к устройствам на основе HTML5 несовместима в мобильных браузерах, особенно в более старых версиях Android. Чтобы преодолеть эти ограничения, Apache Cordova встраивает код HTML5 в собственный WebView на устройстве, используя интерфейс внешней функции для доступа к его собственным ресурсам. [32]

Apache Cordova может быть расширен за счет собственных подключаемых модулей, что позволяет разработчикам добавлять дополнительные функции, которые могут быть вызваны из JavaScript, обеспечивая прямую связь между собственным уровнем и страницей HTML5. Эти плагины обеспечивают доступ к акселерометру устройства, камере, компасу, файловой системе, микрофону и многому другому.

Однако использование веб-технологий приводит к тому, что некоторые приложения Apache Cordova работают медленнее, чем собственные приложения с аналогичной функциональностью. [33] Adobe Systems предупреждает, что приложения, созданные с помощью Apache Cordova, могут быть отклонены Apple из- за того, что они слишком медленные или не кажутся достаточно «родными» (внешний вид и функциональность соответствуют тому, что пользователи ожидают от платформы). [34] [35]

Поддерживаемые платформы [ править ]

Начиная с версии 9, Apache Cordova в настоящее время поддерживает разработку для операционных систем Apple iOS , Google Android , Windows 8.1 , Windows Phone 8.1 , Windows 10 и Electron (программная среда) (которая, в свою очередь, работает в Windows , Linux и macOS ). Более ранняя версия Apache Cordova использовалась для поддержки Bada , BlackBerry , Firefox OS , [36] [37] LG webOS , Microsoft Windows Phone (7 и 8), Nokia Symbian.ОС, Tizen (SDK 2.x) и Ubuntu Touch . В таблице ниже представлен список поддерживаемых функций для каждой операционной системы для Adobe PhoneGap / Apache Cordova 3. [38] [39]

См. Также [ править ]

  • Список полнофункциональных фреймворков Интернет-приложений
  • Платформа веб-приложений для нескольких телефонов
  • Квазар Фреймворк
  • Люкс RhoMobile
  • Cocos2d
  • WinJS
  • NativeScript
  • Xamarin
  • Флаттер
  • Appcelerator Titanium
  • VoltBuilder

Ссылки [ править ]

  1. ^ "apache / cordova-cli" . GitHub .
  2. ^ "Кордова" . npm .
  3. ^ "Cordova-CLI 9.0.0 выпущен" . cordova.apache.org . Архивировано из оригинала на 2019-04-17 . Проверено 17 апреля 2019 .
  4. ^ "Поддержка Cordova платформой - Apache Cordova" . cordova.apache.org .
  5. ^ "Лицензия PhoneGap" . Phonegap.com . Проверено 9 октября 2013 .
  6. ^ «FAQ | PhoneGap Build | Edge Tools & Services | Adobe и HTML» . Html.adobe.com . Проверено 9 октября 2013 .
  7. ^ «Adobe объявляет о соглашении приобрести Nitobi, создателя PhoneGap» . Adobe.com. 2011-10-03. Архивировано из оригинала на 2012-04-13 . Проверено 7 апреля 2012 .
  8. ^ Хосе Fermoso (5 апреля 2009). «PhoneGap стремится преодолеть разрыв между платформами мобильных приложений» . ГигаОМ . Проверено 7 апреля 2012 .
  9. ^ Сообщество, Тики. «Обратный вызов Apache - Tiki Wiki CMS Groupware :: Разработка» . Tiki Wiki CMS Groupware :: Разработка . Архивировано из оригинала 4 апреля 2018 года . Проверено 3 апреля 2018 .
  10. ^ "Предложение обратного вызова Apache" . Wiki.phonegap.com. 2013-08-15 . Проверено 9 октября 2013 .
  11. ^ «Последнее слово о Кордове и PhoneGap» . Официальный ионный блог .
  12. ^ "Intel XDK" . Зона разработчиков Intel .
  13. ^ "Apache Cordova" . Apache Cordova .
  14. ^ «Кто есть кто для авторов Кордовы» . apache.org. 2015-11-02. Архивировано из оригинала на 2015-07-16 . Проверено 2 ноября 2015 .
  15. ^ Дэррил К. Тафт (2009-03-13). «PhoneGap упрощает разработку iPhone, Android и BlackBerry» . Eweek.com . Проверено 9 октября 2013 .
  16. ^ Дэвис, Лидия (2009-04-02). "PhoneGap: приз зрительских симпатий на стартовой площадке выставки Web 2.0 Expo" . Readwriteweb.com . Проверено 7 апреля 2012 .
  17. ^ "Приложения PhoneGap" . Phonegap.com . Проверено 6 декабря 2012 .
  18. ^ «PhoneGap и лицензионное соглашение разработчика Apple.« PhoneGap » . Phonegap.com. 2010-04-14. Архивировано из оригинала на 2012-04-15 . Проверено 7 апреля 2012 .
  19. ^ «Разработайте отличные приложения PhoneGap с помощью потрясающих инструментов» . monaco.mobi. Архивировано из оригинала на 2014-06-20 . Проверено 10 июня 2014 .
  20. ^ "Создавайте мобильные и веб-приложения с помощью HTML5 и JavaScript |" . appMobi.com . Проверено 7 апреля 2012 .
  21. ^ «Мобильные приложения с открытым исходным кодом и корпоративные гибридные приложения» . Конвертиго . Проверено 7 апреля 2012 .
  22. ^ «Convertigo Mobilizer использует API сборки PhoneGap« PhoneGap » . Phonegap.com. 2011-07-07. Архивировано из оригинала на 2012-05-13 . Проверено 7 апреля 2012 .
  23. ^ «Создавайте мобильные и веб-приложения с помощью HTML5 и JavaScript» . ViziApps.com . Проверено 7 апреля 2012 .
  24. ^ «Платформа и инструменты мобильных приложений» . Рабочий свет. 2012-01-16. Архивировано из оригинала на 2012-04-19 . Проверено 7 апреля 2012 .
  25. ^ «Как PhoneGap играет важную роль в нашем предприятии, предлагающем PhoneGap» . Phonegap.com. 2011-06-27. Архивировано из оригинала на 2012-04-15 . Проверено 7 апреля 2012 .
  26. ^ Шенкленд, Стивен (2011-10-03). «Adobe покупает PhoneGap, TypeKit для улучшения веб-инструментов | Deep Tech - CNET News» . News.cnet.com . Проверено 7 апреля 2012 .
  27. ^ «поиск нового имени, которое не является PhoneGap - Брайан Леру - org.apache.incubator.callback-dev» . MarkMail. 2011-10-28 . Проверено 7 апреля 2012 .
  28. ^ "Adobe PhoneGap Build" . Adobe Systems Inc.
  29. ^ Команда, PhoneGap (2017-02-16). "PhoneGap, Кордова, а что в имени?" . Средний . Проверено 10 ноября 2019 .
  30. ^ «Нитоби в Ванкувере, Британская Колумбия» . www.fyple.ca . Проверено 10 ноября 2019 .
  31. ^ Клинт Финли. «Adobe запускает размещенную службу сборки PhoneGap для создания кроссплатформенных мобильных приложений» . 2012 г.
  32. ^ «Разработка мобильных приложений с использованием HTML5 и PhoneGap на платформах на базе архитектуры Intel» . 2012-06-22 . Проверено 17 февраля 2013 . Однако у HTML5 есть некоторые ограничения. Наиболее заметным является отсутствие API для доступа к оборудованию устройства и датчикам, таким как акселерометр, компас, GPS и т. Д. Хотя собственные приложения могут получать доступ к оборудованию устройства, им не хватает переносимости, которую обеспечивают веб-приложения. Таким образом, решением является кодирование гибридного приложения, которое в совокупности использует преимущества собственных и веб-приложений.
  33. ^ Сапан Дивакар (2012-06-21). «Titanium против Phonegap против разработки собственных приложений» . Проверено 17 февраля 2013 .
  34. ^ «Рекомендации PhoneGap по работе с отклонениями приложений Apple» . Adobe Systems . 2012-10-29 . Проверено 17 февраля 2013 .
  35. ^ «Создание приложений с PhoneGap: извлеченные уроки» . Adobe Systems . 2012-09-17. Архивировано из оригинала на 2013-05-18 . Проверено 17 февраля 2013 . Однако когда вы добавляете более сложные элементы CSS3, тяжелые переходы и поддержку нескольких устройств (таких как iOS и Android), вы понимаете, что есть несколько шагов, которые вы должны сгладить, чтобы предотвратить выпадение волос.
  36. ^ «Создание приложений Cordova для Firefox OS ✩ Mozilla Hacks - блог веб-разработчиков» . 20 февраля 2014 . Проверено 26 февраля 2014 года .
  37. ^ «Использование PhoneGap и Sony Ericsson WebSDK для разработки приложений для Android» . Android и я . Проверено 7 апреля 2012 .
  38. ^ «Поддержка платформы» . Adobe PhoneGap . Проверено 23 февраля 2016 .
  39. ^ «Функции, поддерживаемые PhoneGap» . Phonegap.com . Проверено 9 октября 2013 .
  40. ^ "Руководство по платформе Android - Apache Cordova" . cordova.apache.org . Проверено 3 апреля 2018 .

Библиография [ править ]

  • Пеллетье, Джефф (25 апреля 2013 г.). Руководство по мобильному приложению: The Blueprint (1-е изд.). Издательство Withinsight. п. 96. ISBN 978-0989072106.
  • Шоттс, Керри (26 февраля 2013 г.). Обзор разработки мобильных приложений PhoneGap 2.x (1-е изд.). Packt Publishing . п. 388. ISBN 978-1849519403.
  • Гиффорд, Мэтт (22 октября 2012 г.). Поваренная книга по разработке мобильных приложений PhoneGap (1-е изд.). Packt Publishing . п. 320. ISBN 978-1849518581.
  • М. Варго, Джон (11 июня 2012 г.). PhoneGap Essentials: создание кроссплатформенных мобильных приложений (1-е изд.). Эддисон-Уэсли Профессионал . п. 384. ISBN 978-0321814296. Архивировано из оригинала 3 апреля 2015 года . Проверено 29 июня 2012 года .
  • Манро, Джейми (29 марта 2012 г.). 20 рецептов программирования PhoneGap: кроссплатформенная мобильная разработка для Android и iPhone (1-е изд.). O'Reilly Media . п. 76. ISBN 978-1-4493-1954-0.
  • Мариначчи, Джошуа (21 марта 2012 г.). Создание мобильных приложений с помощью Java: Использование Google Web Toolkit и PhoneGap (1-е изд.). O'Reilly Media . п. 86. ISBN 978-1-4493-0823-0.
  • Ланни, Эндрю (23 сентября 2011 г.). Руководство для начинающих по PhoneGap (1-е изд.). Packt Publishing . п. 328. ISBN 978-1-84951-536-8.
  • Гхатол, Рохит (14 ноября 2011 г.). Начало PhoneGap: Mobile Web Framework для JavaScript и HTML5 (1-е изд.). Апресс . п. 700. ISBN 978-1-4302-3903-1.
  • Майер, Томас (13 декабря 2011 г.). Начало PhoneGap (1-е изд.). Wrox . п. 336. ISBN. 978-1-118-15665-0. Архивировано из оригинала на 4 июня 2015 года . Проверено 10 октября 2011 года .

Внешние ссылки [ править ]

  • Официальный веб-сайт