Pull to refresh

PhoneGap vs. Cordova

Reading time 2 min
Views 54K
Многие ошибочно полагают, что PhoneGap это некая единая система. Однако, существует три различные платформы — Cordova (CLI), Phonegap (CLI) и PhoneGap Build. Каждая имеет свои особенности и мелкие вариации.


История


PhoneGap был создан примерно в 2009 году внутри канадского стартапа Nitobi, как среда с открытым исходным кодом, которая позволяла получить доступ к нативным функциям устройства из встроенного webview. Целью проекта было обеспечить возможность построения мобильных приложений исключительно на веб-технологиях (HTML5/CSS и JavaScript), но с возможностью вызова нативного кода.

В 2011 году Adobe приобрели Nitobi и все права на PhoneGap. Исходный код ядра был передан Apache Foundation.
Этот исходный код остался открытым, но ему понадобилось новое имя. После пары неудачных попыток, в конце концов было выбрано «Cordova» – по названию улицы, на которой был расположен офис Nitobi.

Возможности


По своей сути, Cordova предлагает простой, но мощный API для вызова машинного кода из JavaScript'а. Это означает, что вы можете передавать любые данные из WebView на само устройство.
Многие не совсем правильно понимают этот момент. Cordova дает доступ к низкоуровневому API, с помощью простых плагинов (например, для доступа к камере и компасу). Поэтому, когда кто-то говорит, что Cordova не может делать то, что могут нативные приложения, он ошибается. Единственным ограничением являются плагины, доступные в настоящее время, и ваше желание и способности в написании недостающих плагинов.

Для работы с Cordova нужно устанавливать SDK мобильных платформ. Эту проблему решает PhoneGap Build — облачный сервис, который компилирует ваш HTML5 в готовые приложения без головной боли поддержки нативных SDK.

Разница


Cordova — это фреймворк с открытым кодом, которым управляет Apache. PhoneGap — это Cordova + инфраструктура от Adobe. Можно рассматривать Cordova как движок, который питает PhoneGap, подобно тому, как WebKit — это движок, который питает Safari, или Blink — Chrome.

1. Cordova это OpenSource, а PhoneGap принадлежит Adobe.
2. Кроме разных имен пакетов, у PhoneGap и Cordova, разная документация.
3. При выходе новых версий ОС (например iOS 64-bit), Cordova обновляется быстрее, чем PhoneGap.
4. У Cordova нет облачного сборщика проектов.

Что выбрать?


Если вы не хотите заморачиваться с командной строкой, или вам нужна интеграция с облаком, выбирайте Phonegap Build. В остальных случаях, выбирайте Cordova CLI.
Главное, что бы вы ни выбрали, не смешивайте технологии в одном проекте. Это внесет большой беспорядок.
Tags:
Hubs:
+17
Comments 20
Comments Comments 20

Articles