Гид по технологиям

Установка Apache Cordova на Ubuntu 18.04 LTS (Bionic Beaver)

4 min read Мобильная разработка Обновлено 18 Nov 2025
Установка Apache Cordova на Ubuntu 18.04
Установка Apache Cordova на Ubuntu 18.04

Логотип Apache Cordova и схема гибридного приложения

Что такое Cordova

Cordova — свободный фреймворк для создания гибридных мобильных приложений с использованием HTML5, CSS3 и JavaScript. Он позволяет запускать одно и то же веб-приложение на разных платформах (Android, iOS, Windows) с доступом к нативным API через плагины.

Коротко: гибридное приложение = веб-код + контейнер (WebView) + нативные плагины.

Требования

  • Сервер или рабочая станция с Ubuntu 18.04 LTS (Bionic Beaver).
  • Непривилегированный пользователь с правами sudo.
  • Для сборки Android: установленный Android SDK/Android Studio и настроенные переменные окружения (см. раздел «Проверка зависимостей»).

Установка Node.js

Cordova устанавливается через npm, поэтому необходим Node.js. В Ubuntu 18.04 свежие версии Node.js в репозитории по умолчанию могут отсутствовать. В этом примере используется ветка 8.x, как в исходной инструкции.

Выполните:

sudo apt-get install python-software-properties -y  
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -

После добавления репозитория установите Node.js:

sudo apt-get install nodejs -y

Пояснение: первый блок добавляет PPA от NodeSource и конфигурирует apt для установки Node.js 8.x. Если вам нужна другая версия Node.js, замените setup_8.x на соответствующую ветку.

Установка Cordova

Установите Cordova глобально через npm:

sudo npm install -g cordova

Ожидаемый вывод (пример):

/usr/bin/cordova -> /usr/lib/node_modules/cordova/bin/cordova
+ [email protected]
updated 1 package in 15.829s

Проверьте версию:

cordova --version

Пример вывода:

? May Cordova anonymously report usage statistics to improve the tool over time? Yes

Thanks for opting into telemetry to help us improve cordova.

8.0.0

Важно: при первом запуске Cordova может спросить об анонимной телеметрии. Решение за вами.

Создание первого приложения

Создадим приложение с именем TestApp:

cordova create TestApp

Ожидаемый ответ:

Creating a new cordova project.

Перейдите в каталог проекта и добавьте платформу Android:

cd TestApp  
cordova platform add android

Фрагмент типичного вывода при добавлении платформы Android (сокращённо):

Using cordova-fetch for cordova-android@~7.0.0
Adding android project...
Creating Cordova project for the Android platform:
    Path: platforms/android
    Package: io.cordova.hellocordova
    Name: HelloCordova
    Activity: MainActivity
    Android target: android-26
Subproject Path: CordovaLib
Subproject Path: app
Android project created with [email protected]
Android Studio project detected
Discovered plugin "cordova-plugin-whitelist" in config.xml. Adding it to the project
Installing "cordova-plugin-whitelist" for android

Обратите внимание: в выводе указаны версии cordova-android (~7.0.0) и целевой Android API (android-26). Эти сведения пригодятся при настройке Android SDK.

Просмотр и удаление платформ

Список установленных и доступных платформ:

cordova platform -ls

Пример:

Installed platforms:
  android 7.0.0
Available platforms: 
  browser ~5.0.1
  ios ~4.5.4
  osx ~4.0.1
  windows ~5.0.0
  www ^3.12.0

Чтобы удалить платформу:

cordova platform remove android

Проверка зависимостей для сборки

Перед сборкой проверьте, что система удовлетворяет требованиям:

cordova requirements

Для Android убедитесь, что установлены: Java JDK (обычно OpenJDK 8/11), Android SDK, платформы SDK соответствующего уровня (например, API 26), и переменные окружения ANDROID_HOME/ANDROID_SDK_ROOT.

Сборка приложения

Если все зависимости установлены, соберите приложение для Android:

cordova build android

При успешной сборке вы получите APK в каталоге platforms/android/app/build/outputs/apk/ или в аналогичной структуре проекта.

Контрольный список перед сборкой

Разработчик:

  • Проверить версию Node.js: node -v
  • Проверить версию Cordova: cordova –version
  • Убедиться, что проект создан: ls TestApp

Системный администратор / DevOps:

  • Установить JDK и Android SDK
  • Настроить ANDROID_HOME и PATH
  • Проверить наличие нужных SDK-платформ и инструментов (platform-tools, build-tools)

Частые проблемы и решения

  • Ошибка: «ANDROID_HOME is not set» — экспортируйте ANDROID_HOME в ~/.bashrc или ~/.profile и перезапустите терминал.
  • Несоответствие уровня Android API — установите нужную платформу SDK через SDK Manager.
  • Права доступа npm при глобальной установке — используйте sudo или настройте npm для установки глобальных пакетов в домашнюю директорию.

Важно: при использовании sudo npm install -g cordova требуется административный доступ. В крупных командах предпочтительнее использовать менеджер пакетов без sudo или контейнеризацию для изоляции окружения.

Мини‑методология для воспроизводимой сборки

  1. Фиксируйте версии Node.js и Cordova в документации проекта.
  2. Храните файл package.json и config.xml в системе контроля версий.
  3. Используйте CI для автоматической сборки и запуска cordova requirements + cordova build.
  4. Логируйте окружение сборки (node -v, npm -v, cordova –version, java -version).

Критерии приёмки

  • Приложение успешно собирается для Android без ошибок.
  • APK запускается на целевом эмуляторе или реальном устройстве.
  • Нативные функции, необходимые приложению, работают через соответствующие плагины.

Полезные команды (шпаргалка)

  • Установка Node.js: см. setup_8.x команды выше
  • Установка Cordova: sudo npm install -g cordova
  • Создание проекта: cordova create TestApp
  • Добавление платформы: cordova platform add android
  • Список платформ: cordova platform -ls
  • Удаление платформы: cordova platform remove android
  • Проверка зависимостей: cordova requirements
  • Сборка: cordova build android

Резюме

Apache Cordova даёт быстрый путь к созданию кроссплатформенных мобильных приложений с использованием веб‑технологий. На Ubuntu 18.04 процесс сокращается до установки Node.js, глобальной установки cordova, создания проекта и добавления платформы. Для сборки Android дополнительно потребуются JDK и Android SDK. Следуйте контрольным спискам и фиксируйте версии для воспроизводимости.

Заметки

  • Если вам нужна поддержка iOS, её сборка требует macOS и Xcode.
  • Для современных проектов рассмотрите альтернативы и сравните требования: Capacitor, React Native, Flutter — они дают другие балансы между нативом и вебом.
Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Как защитить Windows от трояна Emotet
Безопасность

Как защитить Windows от трояна Emotet

Как изменить язык YouTube — инструкция
Руководство

Как изменить язык YouTube — инструкция

iCloud Photos не синхронизируется — быстрые решения
Техподдержка

iCloud Photos не синхронизируется — быстрые решения

Cordon и drain в Kubernetes — безопасное обслуживание узлов
Kubernetes

Cordon и drain в Kubernetes — безопасное обслуживание узлов

Убрать режим уведомления Windows
Windows

Убрать режим уведомления Windows

Найти сохранённый пароль Wi‑Fi в Linux
Linux

Найти сохранённый пароль Wi‑Fi в Linux