Несколько вопросов о процессе сборки Cordova для Android

#android #cordova #gradle #build #ionic4

#Android #кордова #gradle #сборка #ionic4

Вопрос:

Я начал изучать Ionic, создал приложение, запустил его в браузере и эмуляторе Android. Кажется, все в порядке. Мне просто любопытно узнать о нескольких вещах, но, к сожалению, не смог найти по ним ничего конкретного.

Когда я запускаю команду ionic cordova build android , на консоли появляются следующие строки —

 > ionic-app-scripts build --target cordova --platform android
[13:16:50]  ionic-app-scripts 3.2.1

(--- SOME MORE LINES ---)

> cordova build android
Android Studio project detected
ANDROID_HOME=C:UsersatiyarAppDataLocalAndroidsdk
JAVA_HOME=C:Program Filesjavajdk1.8.0_202
studio

Welcome to Gradle 4.10.1!

Here are the highlights of this release:

(--- SOME MORE LINES ---)

Starting a Gradle Daemon (subsequent builds will be faster)
> Task :wrapper

BUILD SUCCESSFUL in 1m 20s
1 actionable task: 1 executed
Subproject Path: CordovaLib
Subproject Path: app
Downloading https://services.gradle.org/distributions/gradle-4.1-all.zip
.....................................................................................
Starting a Gradle Daemon (subsequent builds will be faster)
Download https://maven.google.com/com/android/tools/build/gradle/3.0.1/gradle-3.0.1.pom

(--- 257 MORE DOWNLOADS --- )
(--- SOME MORE LINES ---)

BUILD SUCCESSFUL in 47m 52s
46 actionable tasks: 46 executed
Built the following apk(s):
        D:CodeIonicIonicSideMenuAppplatformsandroidappbuildoutputsapkdebugapp-debug.apk  
  

Я хотел знать —

  1. Почему проект идентифицирован как «Проект Android Studio»?
    • Я создал проект, используя Ionic CLI.
  2. Почему он загружается gradle-4.1-all.zip ?
    • Как указано здесь, я установил последнюю версию (5.2.1) Gradle и добавил ее в PATH
  3. Что это за файлы .pom и .jar (загруженные после gradle-4.1-all.zip ) используется для?
    • Я никогда раньше не работал с системой сборки Gradle
    • Похоже, загруженные файлы сохраняются в C:UsersUserName.gradle каталог
  4. Если это файлы, используемые для сборки приложения, то как с ними используется основной двоичный файл gradle?
    • Если это «как работает gradle», не могли бы вы, пожалуйста, предложить упрощенный ресурс, чтобы узнать об этом? Я попробовал документацию по gradle.
  5. Как он идентифицировал Gradle 4.10.1?
    • Я нашел gradle-4.10.1 на своем компьютере в каталоге установки Android Studio, но он не добавлен в PATH

Итак, кажется, я пытаюсь составить четкое представление о «скрытом процессе сборки Cordova для Android». Любое предложение будет оценено.

Ответ №1:

  1. Cordova — это, по сути, просто веб-страница поверх собственного проекта Android. Ваше приложение cordova работает в собственном проекте WebView . Ionic работает поверх Cordova
  2. Собственные проекты Android используют gradle в качестве инструмента сборки
  3. .pom файлы представляют собой файлы конфигурации собственных зависимостей Android от сторонних разработчиков, например, config.xml для плагина cordova; .jar это архив java, зависимость от сторонних разработчиков, в вашем случае
  4. Я не совсем понимаю вопрос, но gradle — это на самом деле не то, о чем вам нужно беспокоиться как разработчику Cordova. Android Studio работает в собственной изолированной среде, ваш глобальный gradle не влияет на изолированную среду. Не обновляйте gradle этой изолированной среды, это может привести к сбою вашего проекта cordova
  5. cordova-android это то, что устанавливает версию gradle в вашем собственном проекте