Как подписать приложение cordova
Я сделал пример приложения с именем checkStatus . Теперь я хочу создать подписанный файл APK. Поэтому я могу установить его на разные устройства для моего тестирования.
Для этого я погуглил и нашел эту документацию .
В соответствии с документом я переключился на свой каталог проекта и выполнил следующую команду:
После выполнения приведенной выше команды я получил файл с именем key-name.keystore в projectRoot/key-name.keystore .
А потом я скопировал этот файл в projectRoot/platforms/android/key-name.keystore .
После этого я создал файл с именем ant.properties и сохранил его в projectRoot/platforms/android .
Я написал следующий код внутри файла:
После этого я выполнил следующую команду для освобождения
Поэтому на этот раз я изменил значение key.store в файле ant.properties следующим образом.
Я снова запустил команду cordova build android --release . Он выдает ту же ошибку.
Кто-нибудь может сказать мне, что я сделал не так?
Я использую phone gap для разработки кросс-платформенного мобильного приложения. Должен ли он использовать для этого интерфейс командной строки cordova. я не понимаю необходимости, и в документе говорится, что он будет работать в какой-то конкретной комбинации рабочих environment.please.
Я создал debug APK с apportable, набрав apportable в каталоге моего проекта xcode. Теперь я пытаюсь создать подписанный APK с аппортируемым для отправки.
добавьте --save , чтобы он удалил плагин из файла config.xml .
Чтобы сгенерировать сборку выпуска для Android, нам сначала нужно внести небольшое изменение в файл AndroidManifest.xml , найденный в файле platforms/android., отредактировать файл и изменить строку:
и измените android:debuggable на false :
Начиная с cordova 6.2.0 полностью удалите тег android:debuggable. Вот объяснение из cordova:
Объяснение проблем типа "HardcodedDebugMode": Лучше всего исключить атрибут android:debuggable из манифеста. Если вы это сделаете, то инструменты автоматически вставят android:debuggable=true при построении APK для отладки на эмуляторе или устройстве. А когда ты выполните сборку выпуска, например экспорт APK, он автоматически установит это ложь.
С другой стороны, если вы укажете определенное значение в файле манифеста, то инструменты всегда будут использовать его. Это может привести к случайно издательская деятельность ваше приложение с отладочной информацией.
Теперь мы можем сказать cordova, чтобы сгенерировать нашу сборку выпуска:
Затем мы можем найти наш неподписанный файл APK в platforms/android/ant-build . В нашем примере файл был platforms/android/ant-build/Example-release-unsigned.apk
Примечание: у нас есть наше хранилище ключей keystoreNAME-mobileapps.keystore в этом Git Repo, если вы хотите создать другое, пожалуйста, выполните следующие действия.
Генерация Ключей:
Синтаксис:
Затем хранилище ключей было сгенерировано с именем NAME-mobileapps.keystore
Место генерируемых ключей в
старая версия cordova
Новая версия cordova
Чтобы подписать неподписанный APK, запустите инструмент jarsigner, который также входит в состав JDK.:
Синтаксис:
Это означает, что apk на месте.
Наконец, нам нужно запустить инструмент выравнивания zip для оптимизации APK:
Теперь у нас есть наш окончательный двоичный файл выпуска под названием example.apk, и мы можем выпустить его в Google Play Store.
Обновление до @malcubierre для Cordova 4 (и более поздних версий)-
Создайте файл с именем release-signing.properties и поместите его в папку APPFOLDER\platforms\android
Содержимое файла: edit after = для всех, кроме 2-й строки
Затем эта команда должна создать релизную версию:
UPDATE - это не работало для меня Cordova 10 with android 9 -сборка заменяла файл release-signing.properties. Мне пришлось сделать файл build.json и поместить его в папку приложения, как и root. А это уже содержимое-замените как указано выше:
Запустите его, и он сгенерирует один из тех release-signing.properties в папке android
В текущей документации мы можем указать build.json с хранилищем ключей:
А затем казните Коммандос с помощью . buildConfig argumente, вот так:
Я получил следующую ошибку во время установки cordova 3.5 из интерфейса командной строки. Я также установил путь
Я пытаюсь создать файл .apk для своего мобильного телефона, используя платформу cordova (Android) на платформе ubuntu 14.04. для unsigned я использовал команду $ cordova build --release android или $ cordova build android --release он создает CordovaApp-release-unsigned.apk в папке ant-build , но.
Шаг 1:
Перейдите в cordova\platforms\android ant создайте файл ant.properties с информацией о файле хранилища ключей (это хранилище ключей может быть сгенерировано из вашей любимой Android SDK студии. ):
Шаг 2:
Перейдите к cordova path и выполните:
Примечание: вам будет предложено запросить ваше хранилище ключей и пароль ключа
YourApp-release.apk появится в \cordova\platforms\android\ant-build
В cordova 6.2.0 у него есть простой способ создать сборку выпуска. см. другие шаги здесь шаги 1, 2 и 4
На Mac (osx) я сгенерировал два файла .sh, один для первой публикации, а другой для обновления :
И обновить ваше приложение:
Предположим, что вы находитесь в своей домашней папке или папке, возглавляющей ваши папки приложений. Убедитесь, что вы правильно настроили chmod для использования этого скрипта. Затем :
Ваш подписанный apk будет находиться в вашем приложении folder/platforms/android/build/outputs/apk / as SignedApk.apk Убедитесь, что вы используете правильный псевдоним ключа и пароль, определенные в первом скрипте
Файл build выпуска APK в cmd cordova.
Путь к файлу хранилища ключей : путь к файлу хранилища ключей (F:/cordova/myApp/xxxxx.jks)
Пароль хранилища ключей: xxxxx
Псевдоним хранилища ключей: xxxxx
Ключей, пароль, псевдоним : ХХХХХ
Путь zipalign.exe : zipalign.exe путь к файлу (C:\пользователи\ХХХХ\AppData\местные\Android\sdk\строить-инструменты\25.0.2\zipalign)
ANDROID без подписи APK имя: android-релиз-unsigned.apk
ANDROID ВЫПУСК APK ИМЯ : android-release.apk
Выполните следующие шаги в cmd (Запуск от имени администратора)
- cordova построить-релиз android
- перейдите в папку android-release-unsigned.apk file location (PROJECT\platforms\android\build\outputs\apk)
- jarsigner-verbose-sigalg SHA1withRSA-digestalg SHA1 -keystore < Key STORE file PATH > < ANDROID UNSIGNED APK NAME > < KEY STORE ALIAS >
- < путь zipalign.exe > - v 4 < ANDROID UNSIGNED APK NAME > < ANDROID RELEASE APK NAME >
Сначала проверьте свой код версии и имя версии, если вы обновляете свое приложение. И убедитесь, что у вас есть предыдущее хранилище ключей.
Если вы обновляете приложение, то выполните шаг 1,3,4.
Гото проекта cordova для создания нашей сборки выпуска:
Затем мы можем найти наш неподписанный файл APK в platforms/android/ant-build. В нашем примере файл был
если вы использовали ant-build
OR
если вы использовали gradle-build
Генерация Ключей:
Синтаксис:
если команда keytool не распознается выполните этот шаг
Убедитесь, что каталог, в котором находится исполняемый файл keytool, находится на вашем пути. (Например, на моей машине Windows 7 он находится в файлах C:\Program (x86)\Java\jre6\bin.)
Пример:
Затем было сгенерировано хранилище ключей с именем NAME-mobileapps.keystore
Место генерируемых ключей в D:\projects\Phonegap\Example\platforms\android\ant-build
Чтобы подписать неподписанный APK, запустите инструмент jarsigner, который также входит в состав JDK.:
Синтаксис:
Если он не восстанавливается выполните следующие действия
(1) Щелкните правой кнопкой мыши на "This PC" > щелкните правой кнопкой мыши Свойства > Дополнительные Системные настройки > Переменные среды > выберите PATH, затем EDIT.
(2) Добавьте путь к папке JDK bin в переменные среды, он должен выглядеть следующим образом:
Пример:
Это означает, что apk на месте.
Наконец, нам нужно запустить инструмент выравнивания zip для оптимизации APK:
если zipalign не распознает то
(1) Перейдите к своему пути android sdk и найдите zipalign, который обычно находится в android-sdk\build-tools\23.0.3
(2) скопируйте вставку файла zipalign в папку generate release apk, как правило, по нижеприведенному пути
Теперь у нас есть наш окончательный двоичный файл выпуска под названием example.apk, и мы можем выпустить его в Google Play Store.
Для Windows я создал файл build.cmd :
(замените путь к хранилищу ключей и псевдоним)
Сохраните его в каталоге ptoject, вы можете дважды щелкнуть или открыть его с помощью cmd.
Похожие вопросы:
Я хочу установить файл с помощью командной строки Windows. Сначала я хочу построить после компиляции всех файлов .jar файл .apk для приложения Android без использования Eclipse. Кто-нибудь знает.
Я хочу экспортировать подписанный файл apk из моего проекта Android с помощью командной строки terminal на моем mac. прежде всего, я понимаю, что мне нужно сделать файл build.xml, и я делаю это с.
Я настроил apache cordova на своей платформе Windows/Cygwin. Я могу создать проект с помощью команды- cordova create <app_name> . Я добавил платформу android с помощью команды - cordova.
Я использую phone gap для разработки кросс-платформенного мобильного приложения. Должен ли он использовать для этого интерфейс командной строки cordova. я не понимаю необходимости, и в документе.
Я создал debug APK с apportable, набрав apportable в каталоге моего проекта xcode. Теперь я пытаюсь создать подписанный APK с аппортируемым для отправки.
Я получил следующую ошибку во время установки cordova 3.5 из интерфейса командной строки. Я также установил путь
Я пытаюсь создать файл .apk для своего мобильного телефона, используя платформу cordova (Android) на платформе ubuntu 14.04. для unsigned я использовал команду $ cordova build --release android или.
Я пытаюсь создать подписанное приложение из cordova на своем mac. Всякий раз, когда я запускаю cordova build android --release , он выпускает unsigned apk. Я создал учетную запись в Play store.
Я использую VS-код для разработки Ionic/Cordova. Из-за некоторых ограничений, связанных с процессом входа в систему Google Plus, APK должен быть подписан. Я успешно подписал и протестировал.
Я пытаюсь построить подписанный файл apk. Я не уверен, почему он не генерирует. Я сгенерировал подписанный apk в прошлом с помощью Stack Overflow. На этот раз я делаю то же самое, но не знаю, почему.
я сделал образец приложения с именем checkStatus . Теперь я хочу создать подписанный файл APK. Поэтому я могу установить его на разных устройствах для тестирования.
для этого я погуглил и нашел это документация.
согласно документу, я переключился в каталог проекта и выполнил следующую команду:
после выполнения вышеуказанной команды я получил файл с именем key-name.keystore at projectRoot/key-name.keystore .
и затем я скопировал-вставил это файл в projectRoot/platforms/android/key-name.keystore .
после этого я создал файл с именем ant.properties и сохранил его в projectRoot/platforms/android .
я написал следующий код в файл:
после этого я выполнил следующую команду, чтобы освободить
он бросает следующую ошибку:
может ли кто-нибудь сказать мне, что я сделал неправильно?
добавить --save так, что он удаляет плагин из .
чтобы создать сборку выпуска для Android, нам сначала нужно внести небольшое изменение в AndroidManifest.xml файл найден в platforms / android. Отредактируйте файл и измените строку:
, и android:debuggable to false :
начиная с cordova 6.2.0 полностью удалите тег android: debuggable. Вот объяснение от Кордовы:
объяснение проблем типа " HardcodedDebugMode": Лучше всего исключить атрибут android: debuggable из манифеста. Если вы это сделаете, то инструменты автоматически вставят android:debuggable=true при создании APK для отладки на эмуляторе или устройстве. И когда вы выполните сборку выпуска, например экспорт APK, он будет автоматически установлен это ложь.
если с другой стороны укажите определенное значение в файле манифеста, тогда инструменты всегда будут использовать его. Это может привести к случайной публикации ваше приложение с отладочной информацией.
теперь мы можем сказать Cordova, чтобы создать нашу версию:
тогда мы можем найти наш неподписанный файл APK в platforms/android/ant-build . В нашем примере файл был platforms/android/ant-build/Example-release-unsigned.apk
Примечание: у нас есть хранилище ключей keystoreNAME-mobileapps.keystore в этом РЕПО Git, если вы хотите создать другой, пожалуйста, выполните следующие действия.
Генерация Ключей:
синтаксис:
затем ключ магазин был создан с имя-mobileapps.хранилища ключей
поместите созданное хранилище ключей в
старая версия cordova
новая версия cordova
чтобы подписать неподписанный APK, запустите инструмент jarsigner, который также включен в JDK:
синтаксис:
это подписывает apk на месте.
наконец, нам нужно запустить инструмент выравнивания zip для оптимизации APK:
теперь у нас есть наш окончательный двоичный выпуск под названием example.APK и мы можем выпустить это на Google Play Store.
обновление @malcubierre для Cordova 4 (и более поздних версий) -
создайте файл с именем release-signing.properties и положил в APPFOLDER\platforms\android папку
содержимое файла: редактировать после = для всех, кроме 2-й строки
тогда эта команда должна создать версию выпуска:
в течение документация мы можем указать сборки.json с хранилищем ключей:
а затем выполните Коммандос с -- buildConfig argumente, таким образом:
Шаг 1:
на cordova\platforms\android ant создать филе под названием ant.properties файл с информацией о файле хранилища ключей (это хранилище ключей может быть сгенерировано из вашего любимого Android SDK, studio. ):
Шаг 2:
перейти к cordova path и выполнить:
Примечание: вам будет предложено задать хранилище ключей и пароль ключа
YourApp-релиз.apk появится в \cordova\platforms\android\ant-build
в Кордова 6.2.0, Это простой способ создать сборку. см. другие шаги здесь шаги 1, 2 и 4
на Mac (osx) я создал два .sh файлы, один для первой публикации и другой для обновления:
и обновить приложение:
предполагая, что вы находитесь в домашней папке или папке, покрывающей папки приложений. Убедитесь, что правильно установлен chmod для использования этого скрипта. Затем:
ваш подписанный apk будет в папке приложения / платформы / android / build/outputs/ apk / as SignedApk.apk Обязательно используйте правильный псевдоним ключа и пароль, определенный с помощью первого скрипта
сначала проверьте код версии и имя версии, если вы обновляете приложение. И убедитесь, что у вас есть предыдущее хранилище.
если вы обновляете приложение, выполните шаг 1,3,4.
Goto ваш проект cordova для создания нашей сборки выпуска:
затем мы можем найти наш неподписанный файл APK в platforms/android / ant-build. В нашем примере файл был
если u использовал ant-build
или
если вы использовали gradle-build
Генерация Ключей:
синтаксис:
если команда keytool не распознает, сделайте этот шаг
проверяем, что директория исполняемого keytool-это in на вашем пути. (Например, на моей машине Windows 7 он находится в C:\Program файлы (x86)\Java\jre6\bin.)
пример:
затем ключ магазин был создан с имя-mobileapps.хранилища ключей
поместите сгенерированное хранилище ключей в D:\projects\Phonegap\Example\platforms\android\ant-build
чтобы подписать неподписанный APK, запустите инструмент jarsigner, который также включен в JDK:
синтаксис:
если он не узнал эти шаги
(1) щелкните правой кнопкой мыши на "этот ПК" > щелкните правой кнопкой мыши Свойства > расширенные Системные настройки > Переменные среды > выберите путь, затем отредактируйте.
(2) добавьте путь к папке JDK bin в переменные среды, он должен выглядеть так:
пример:
это подписывает apk на месте.
наконец, нам нужно для запуска инструмента выравнивания zip для оптимизации APK:
если zipalign не признают, то
(1) goto ваш Android sdk путь и найти zipalign это обычно в android-sdk\build-tools\23.0.3
(2) скопируйте файл zipalign вставить в папку generate release apk обычно в ниже путь
yourproject / платформы / android / ant-сборка / пример-выпуск-без знака.apk
теперь у нас есть наш окончательный двоичный выпуск под названием example.apk, и мы можем выпустить это в Google Play Store.
Build cordova релиз APK файл в cmd.
ПУТЬ К ФАЙЛУ ХРАНИЛИЩА КЛЮЧЕЙ: путь к файлу хранилища ключей (F:/cordova/myApp/xxxxx - . jks)
ПАРОЛЬ ХРАНИЛИЩА КЛЮЧЕЙ: xxxxx
ПСЕВДОНИМ ХРАНИЛИЩА КЛЮЧЕЙ: xxxxx
ПАРОЛЬ ПСЕВДОНИМА ХРАНИЛИЩА КЛЮЧЕЙ: xxxxx
путь zipalign.exe: zipalign.путь к файлу exe (C:\Users\xxxx\AppData\Local\Android\sdk\build-tools\25.0.2\zipalign)
ANDROID БЕЗ ЗНАКА APK ИМЯ: android-релиз-без знака.apk
ANDROID РЕЛИЗ APK ИМЯ: android-релиз.apk
выполните следующие шаги в cmd (Запуск от имени администратора)
Тут вам покажем несколько способов инструментов, при помощи которых можно подписывать приложения Android перед публикацией их в Google App Play.
Вы можете использовать Android Studio для ручного создания подписанных APK, по одному за раз, или для нескольких вариантов сборки сразу. Вместо того, чтобы вручную подписывать APK, вы также можете настроить свои настройки сборки Gradle для автоматической обработки подписей во время процесса сборки. В этом разделе описывается процесс ручной подписи. Подробнее о подписании приложений как части процесса сборки см. В разделе Настройка процесса сборки для автоматической подписки APK.
Чтобы вручную подписать APK для выпуска в Android Studio, выполните следующие действия:
- Жмем Build > Generate Signed APK и откроется окно Generate Signed APK . (Как создать ключи подписи в Android Studio мы писали в прошлой статье)
- В окне Generate Signed APK Wizard выберите хранилище ключей, закрытый ключ и введите пароли для обоих. (Если вы только что создали хранилище ключей в предыдущем разделе, эти поля уже будут заполнены) Затем нажмите «Next»
- В следующем окне выберите пункт назначения для подписанных APK, выберите тип сборки (если применимо), выберите продукт (ы) и нажмите «Finish»
Когда процесс завершится, вы найдете свой подписанный APK в выбранной вами папке назначения. Теперь вы можете распространять подписанный APK через торговую площадку приложения, например, в Google Play Store, или использовать выбранный вами механизм распространения подписанного приложения конечным пользователям.
Чтобы пользователи могли успешно устанавливать обновления для вашего приложения, вам нужно будет подписать APK с тем же сертификатом на протяжении всего срока действия вашего приложения.
Подробнее об этом и других преимуществах подписания всех ваших приложений с помощью одного и того же ключа, по поводу безопасности и редактирования.
Есть сгенерированные ключи подписи или создаем?
Мы уже разбирали тут, как генерировать хранилище ключей с ключом подписи. Если кратко, то вы можете подписать свое приложение из командной строки с помощью инструмента apksigner или настроить Gradle для его подписки во время сборки. В любом случае вам нужно сначала сгенерировать закрытый ключ с помощью keytool. Например командой
Примечание: keytool находится в каталоге bin/ вашего JDK. Чтобы найти ваш JDK из Android Studio, выберите «File»> «Project Structure», а затем «SDK Location», и вы увидите местоположение JDK
В этом примере команды консоль еще запросит ввести пароли для хранилища ключей и ключа подписи и запросит заполнить поля Distinguished Name для вашего ключа. Затем он генерирует хранилище ключей в виде файла с именем my-release-key.jks, сохраняя его в текущем каталоге (вы можете перемещать его по своему усмотрению). Хранилище ключей содержит один ключ, действительный в течение 10 000 дней.
Теперь вы можете создать unsigned APK, т.е. построить конфигурацию release и подписать его вручную или вместо этого настроить Gradle для автоматического подписания APK.
Инструмент apksigner, доступный в версии 24.0.3 и выше для Android SDK Build Tools, позволяет вам подписывать APK и подтверждать, что подпись APK будет проверена успешно на всех версиях платформы Android, поддерживаемых этими APK. В этом подразделе представлено краткое руководство по использованию инструмента и служит ссылкой для различных параметров командной строки, которые поддерживает инструмент
Примечание 1. если вы подписываете APK с помощью apksigner и вносите дальнейшие изменения в APK, подпись APK становится недействительной. Поэтому перед подписанием APK вы должны использовать такие инструменты, как zipalign.
Примечание 2. Чтобы использовать инструмент apksigner, вы должны иметь версию 24.0.3 или выше установленных инструментов Android SDK Build Tools. Вы можете обновить этот пакет с помощью диспетчера SDK.
1). Открываем командную строку и перемещаемся в корневую директорию —из Android Studio, выбираем View > Tool Windows > Terminal. Затем вызываем команду assembleRelease :
2). Align the unsigned APK using zipalign:
zipalign гарантирует, что все несжатые данные начинаются с конкретного выравнивания байтов относительно начала файла, что может уменьшить объем оперативной памяти, потребляемой приложением.
3). Подписываем APK своим личным ключом с помощью apksigner:
В этом примере выводится подписанный APK на my-app-release.apk после его подписания с закрытым ключом и сертификатом, который хранится в одном файле хранилища ключей: my-release-key.jks.
Инструмент apksigner поддерживает другие параметры подписки, включая подписание файла APK с использованием отдельного закрытого ключа и файлов сертификатов и подписку APK с использованием нескольких подписчиков. Для получения дополнительной информации см. ссылку apksigner.
4). Убеждаемся, что ваш APK подписан:
Пример подписки средствами Android SDK
Если вышеописанное вызывает трудности, то давайте сделаем некоторый простой пример генерации ключа командой keytool, выполнения операции zipalign и подписи командой apksigner.
Сначала строим релиз средствами Cordova и Android SDK
Команда keytool генерации ключа в консоли:
Операция zipalign в консоли:
Обратите внимание, что zipalign мы выполняем по прямому пути версии приложения, которая соответствует версии нашего разрабатываемого приложения.
Операция подписи apksigner:
Обратите внимание, что apksigner мы выполняем по прямому пути версии приложения и указываем путь к сгенерированному ключу, которая соответствует версии нашего разрабатываемого приложения. Далее, после нажатия Enter, консоль запросит поочередно запросить пароль от хранилища ключей и от самого ключа.
Команда подписи с ее параметрами записывается так
Имена параметров нам знакомы по keytool:
- хранилище (keystore),
- пароль (storepass) к нему
- пароль (keypass) к ключу.
- А последние два параметра – это имя APK-файла, который вы хотите подписать и алиас ключа из указанного хранилища, который вы хотите использовать для подписи.
После данной команды приложение будет подписано и будет готово к установке на устройства или можно распространять через Google App Play.
Если стоит задача разработки мобильного приложения для сайта, можете воспользоваться данной заметкой. Постарался сделать ее более менее подробной, но при этом не сильно нудной.
Однако, не буду рассматривать момент с регистрацией учетных записей разработчика в AppStore и GooglePlay. Думаю, сможете разобраться самостоятельно. Расскажу только, а сборке самого приложения.
Минусы продукта 1С-Битрикс: Мобильное приложение
У компании 1С-Битрикс, есть собственное решение, для разработки приложений, так и называется: "1С-Битрикс: Мобильное приложение". Его мы использовать не будем ввиду ряда, достаточно критичных минусов:
- Дороговато: - стоимость лицензии: 47 900 руб. Плюс ежегодные продления за 50% стоимости.
- Не удобные обновления - если потребуется внести изменения в приложение: иконку, загрузочные экраны, название и.т.д. метаданные. Нужно оформлять заявку на компиляцию, через ТП Битрикс, ждать обработки заявки, потратить время на прохождение авторизаций в маркетах
- Нет контролируемой гибкости - внутри приложения используются только те плагины Cordova, которые заложил сам Битрикс. Возможности расширить их ассортимент нет (как и избавиться от не нужных)
- Тяжелый вес - после компиляции и публикации, мобильное приложение весит в пределах 15-35 мегабайт (наше будет в пределах мегабайта)
Делаем приложение на Cordova
Если говорить по простому: Cordova позволяет упаковать любой сайт в мобильное приложение, с дальнейшей публикацией в магазинах приложений AppStore и GooglePlay. Так же Cordova позволяет создавать и настольные приложения для Windows и macOS (включая платформу Electron)
Любое приложение, можно создать как самодостаточным- содержащим всю логику, контент и функционал внутри себя. Так же, можно создать приложение с сетевыми функциями- по сути, с открытием любого сайта внутри себя.
В этой заметке рассматриваю разработку, приложения, именно для сайта (магазина, инфоресурса и.т.д.) и только для Android и iOs. Важный момент, это ни как не связано с 1C-Битрикс, "заверуть" в приложение можно абсолютно любой сайт- не важно, на чем работающий.
Итак, не буду размусоливать, просто приступим. Детали можно будет обсудить в комментариях. Если забыл что-то важное- дополню заметку
Как сделать приложение на Cordova
Итак. Перво на перво качаем и устанавливаем NodeJS, от него нам нужен менеджер пакетов npm
После установки, выполняем команду в терминале npm install -g cordova - собственно, установит cordova на компьютер.
Устанавливаем Android Studo и Xcode (не доступен для Windows - для iOs можно сделать, приложение, только на macOS)
Создаем папку, в которой будем хранить проекты. Для примера буду использовать /Documents/CordovaProjects и переходим в нее в терминале cd /Documents/CordovaProjects.
Здесь же выполняем команду cordova create AppName ru.appname.app MihailBazarow эта команда создаст проект в директории AppName и названием ru.appname.app
Далее переходим в директорию /Documents/CordovaProjects/AppName, открываем файл config.xml и приводим примерно к такому виду (подсказки в комментариях)
Теперь добавляем платформы, в нашем случае android и iOs
cordova platform add android
cordova platform add ios
Достаточно важный момент: в cordova, поддерживаются плагины, которые позволяют получить доступ к железу и прочим API устройства (камера, GPS, телефонная книга итд). Но, каждый плагин нужно устанавливать отдельно, их достаточно много. Можно установить все, но лучше отсортировать и использовать те которые вам реально нужны, в конкретном проекте.
Плагины устанавливаются командой cordova plugin add НАЗВАНИЕ_ПЛАГИНА
Перечисляю наиболее востребованные, для гипотетического магазина:
- cordova-plugin-wkwebview-engine - важный плагин, переключает движек рендеринга страниц, на более свежий
- cordova-plugin-remote-injection - важный плагин, без него не заработают остальные плагины (если открываете контент через веб доступ)
- yandex-appmetrica-plugin-cordova - appmetrica для Яндекса
- cordova-plugin-geolocation - геопозиция с GPS датчика
- cordova-plugin-splashscreen - управление загрузочными экранами
- cordova-plugin-statusbar - управление статус-баром
- cordova plugin add cordova-plugin-contacts - обеспечивает доступ к базе данных контактов устройства.
- cordova plugin add cordova-plugin-device-motion - доступ к акселерометру устройства.
- cordova plugin add cordova-plugin-firebase - работа с push через firebase
- cordova plugin add cordova-plugin-android-imei - получение IMEI (Только Андроид)
Осталось собрать приложение, выполняем команду cordova build - на ошибки внимания не обращаем, они нас не интересуют и всю дальнейшую работу делаем в IDE
В Android Studio добавляем проект из папки /Documents/CordovaProjects/AppName/platforms/android здесь можете его скомпилировать в apk или bundle(предпочтительнее) и опубликовать в GooglePlay
В Xcode открываем /Documents/CordovaProjects/AppName/platforms/ios. И тут все сложнее:
- Проверяем вкладку frameworks: если видим расширения типа AppKit, HomeKit, HealthKit - удаляем их.
- Проверяем вкладку с иконками: для Apple их нужно много, разных размеров- если какой-то не хватает (будет висеть подсказка)- добавляем
- Добавляем учетку разработчика и ассоциируем с этим приложением
- Выполняем архивацию приложения
- Из архива, отправляем приложение на проверку. Если есть ошибки, выдаст их список в этом же окне- исправляем
- Если ошибок нет, отправляем на публикацию из этого же окна
Пример приложения созданного по данному способу: в моем портфолио, там же ссылки на магазины (обратите внимание на вес приложения)
Дополнительно
Поле публикации, приложение можно обновлять выпуская новую версию:
- В config.xml обязательно меняете номер версии. Вносите прочие изменения, если нужны
- Добавляете или удаляете плагины
- Производите прочие доработки и изменения
- Выполняете команду cordova build
- Компилируете приложение в IDE-шках
- Публикуете не как новое, а именно как обновление имеющегося.
И еще одна штучка
Я не рассматривал разработку самого контента приложения. Тут, надеюсь все понятно: Просто делаете сайт, который будет открываться внутри приложения.
Читайте также: