Skip to content

Latest commit

 

History

History
85 lines (59 loc) · 5.49 KB

CORDOVA.md

File metadata and controls

85 lines (59 loc) · 5.49 KB

Мобильное приложение GOLOS Messenger

Работает на Android.

git clone https://github.com/golos-blockchain/ui-messenger

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

Сборку можно осуществлять на Windows или Linux (не тестировалось).

  1. Установите Node.js 16 (Windows, Linux). В случае Windows тщательно проследите, нет ли в установщике флажка "Добавить Node.js в переменную PATH", и если он есть, то отметьте его.

  2. Установите Android Studio.

  3. Запустите Android Studio. Установите все, что будет предложено при установке.

  4. Создайте пустое приложение Android (с любым Activity и конфигурацией), соберите его. Это нужно для того, чтобы установился Gradle, а также для прроверки правильности установки Android Studio.

  5. Запустите Windows Powershell (сборку рекомендуется осуществлять в нем).

  6. Командой gci env: определите, какие переменные среды заданы в системе. Должны быть (в числе прочих) следующие переменные среды:

Ключ Значение Примечание
ANDROID_SDK_ROOT C:\Users\(username)\AppData\Local\Android\Sdk

Кроме того, переменная среды PATH (проверить командой echo $env:PATH) должна включать следующие значения (разделенные знаком ;):

Значение Примечание
C:\Program Files\Android\Android Studio\jre\bin
C:\Users\(username)\.gradle\wrapper\dists\gradle-6.8-bin\1jblhjyydfkclfzx1agp92nyl\gradle-6.8\bin Укажите тот путь, который верен в вашем случае
C:\Users\(username)\AppData\Local\Android\Sdk\platform-tools Для adb (вспомогательное, для сборки может не требоваться)

Если каких-то переменных не хватает, то необходимо их задать. Задавать переменные среды следует с помощью настроек системы (Панель управления -> Система -> Дополнительные параметры системы -> Переменные среды).

После того, как переменные среды заданы, PowerShell нужно перезапустить.

  1. Установите глобальные зависимости:
npx yarn global add [email protected]
  1. Скачайте репозиторий с помощью git clone (команда есть выше).

  2. Внесите все настройки в файле config/mobile.json:

  • site_domain (пример: chat.golos.app то есть основной домен мессенджера)
  • images
  • auth_service
  • notify_service
  • blogs_service
  • app_updater
  1. Установите все зависимости (для сборки).
npx yarn install
  1. Подключите устройство по USB (разрешив отладку) и убедитесь, что adb видит его, выполнив в командной строке команду
adb devices
  1. Соберите приложение.
npx yarn run build:mobile

Сборка происходит в два этапа - сначала собирается код React с помощью Webpack, затем на его основе собирается мобильное приложение с помощью Cordova.

Этап Cordova при первом этапе сборки включает в себя скачивание Gradle, а также может выдавать ошибки, которые нужно устранить дополнительно.

В случае ошибки с требованием установить Build Tools нужной версии или иные компоненты, необходимо:

  • Открыть Android Studio.
  • Выбрать SDK Manager.
  • Снять галочку "Hide obsolete packages".
  • Найти нужную версию нужного пакета.
  • Установить его.
  • Снова попробовать собрать (используя при этом команду npx yarn run postbuild:mobile, чтобы не повторять этап Webpack, который уже выполнен).

В случае успешной сборки собранный APK будет в cordova/platforms/android/app/build/outputs/apk/debug Кроме того, APK сразу же устанавливается на устройство. Об успешной установке свидетельствует сообщение INSTALL SUCCESS. Ошибка типа "sh" ?? ????? говорит о том, что устройство не обнаружено (например, проблемы с разъемом, кабелем).