Android的Cordova构建过程

时间:2019-03-14 20:17:14

标签: android cordova gradle build-process 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:\Users\atiyar\AppData\Local\Android\sdk
JAVA_HOME=C:\Program Files\java\jdk1.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:\Code\Ionic\IonicSideMenuApp\platforms\android\app\build\outputs\apk\debug\app-debug.apk  

我想知道-

  1. 为什么将项目标识为“ Android Studio项目”?
    • 我使用Ionic CLI创建了项目。
  2. 为什么下载gradle-4.1-all.zip?
    • 按照here的指示,我安装了Gradle的最新版本(5.2.1)并将其添加到PATH
  3. 所有这些.pom和.jar文件(在gradle-4.1-all.zip之后下载)有什么用途?
    • 我以前从未使用过Gradle构建系统
    • 好像下载的文件存储在C:\ Users \ UserName \ .gradle目录中
  4. 如果这些是用于构建应用程序的文件,那么主gradle二进制文件如何与它们一起使用?
    • 如果这是“ gradle的工作原理”,请提出一个简化的资源来了解它吗?我尝试了gradle documentation
  5. 它如何识别Gradle 4.10.1?
    • 我在Android Studio安装目录中的计算机上找到了gradle-4.10.1,但未将其添加到PATH

因此,似乎我正在尝试清晰地了解“适用于Android的Cordova构建过程的内幕”。任何建议将不胜感激。

1 个答案:

答案 0 :(得分:0)

  1. Cordova本质上只是一个原生Android项目之上的网页。您的cordova应用程序在本机项目的Uncaught Sys.InvalidOperationException: Sys.InvalidOperationException: Could not find UpdatePanel with ID "xxx". If it is being updated dynamically then it must be inside another UpdatePanel中运行。离子在科尔多瓦的顶端运行
  2. 原生android项目使用gradle作为其构建工具
  3. WebView文件是具有本地android第三方依赖性的配置文件,例如.pom用于cordova插件; config.xml是Java档案,是您的情况下的第三方依赖项
  4. 我不太了解这个问题,但是作为Cordova开发人员,gradle并不是您真正需要担心的任何事情。 Android Studio在其自己的沙箱中运行,您的全局gradle不会影响沙箱。不要升级该沙箱的gradle,它可能会破坏您的cordova项目
  5. .jar是在您的本机项目中设置gradle版本的方法