Страницы

Поиск по вопросам

воскресенье, 7 апреля 2019 г.

PhoneGap или Cordova?

День добрый! Объясните, пожалуйста, есть ли различия между PhoneGap и Cordova? Просто хотел сделать мобильную версию приложения, и не могу понять, в чем их различия. В Сети говорят, что они одинаковые фреймворки, то phonegap лучше, некоторые за cordova-у. У меня нету опыта в этих технологиях, вот и спрашиваю, что выбрать. Netbeans как бы рекомендует из коробки cordovu https://netbeans.org/kb/docs/webclient/cordova-gettingstarted_ru.html, плагина для phonegap не смог найти. И еще вопрос: с помощью каких из них (phonegap, cordova) можно получить доступ к дисплею (включать/выключить) смартфона (андроид)? Спасибо.


Ответ

Cordova - фреймворк с открытым кодом. Phonegap - обертка для этого фреймворка, принадлежащая Adobe и позволяющая теснее взаимодействовать с другими сервисами Adobe. В первую очередь, с Phonegap Build - это облачный сервис на основе Phonegap, который на основе Cordova, в доме, который построил Джек. О нем ниже.
С практической точки зрения, разницы между Phonegap и Cordova нет. Оба устанавливаются локально, оба умеют подтягивать плагины из репозиторев, оба имеют одни и те же глюки, т.к. код в основе один. Разница выглядит примерно так:
$usr> phonegap local build android //local - потому что не в облаке, можно remote
$usr> cordova build android //кордова всегда локальна
Я выбрал Cordova, т.к.:
Интеграция с облаком мне не нужна. Я всегда выбираю более "тонкий" стек технологий. Phonegap апдейтится почти одновременно с Cordova, но не одновременно. Например, поддержка 64-bit iOS apps там припозднилась на месяц. Я за open source и не люблю Adobe.
Как-то раз мне пришлось переключиться с Cordova на Phonegap Build (я делал и тестировал приложение локально, заказчик создавал бинарники в облаке со своими ключами). Переход занял примерно день, в основном на отлов мелких багов, когда что-то в Cordova работало, а в Phonegap Build - нет.
Например, длительность сплэш-заставки в Cordova прописывается в config.xml:

Phonegap Build эту настройку проигнорировал, поэтому пришлось подключать плагин для управления заставкой через JavaScript и делать это руками.

Комментариев нет:

Отправить комментарий