1. Cordova混合APP (安装->打包完整流程)
列举全部版本
JDK | 11.0.2
Node | 18.20.4
Npm | 10.7.0
cordova | 12.0.0 (cordova-lib@12.0.2)
gradle | 8.10
Android Studio Meerkat | 2024.3.1下面文章都会指定特定版本,尽量保持一致
1.1 安装软件
- JDK安装看网上的
- Node安装看网上的
- Android Studio安装看网上的
1.2 创建Cordova项目
npm install -g cordova
cordova create myApp
cordova platform add android@12.0.1
1.3 下载Gradle8.10
- 通过 官网 下载
- 下载完成后解压
- 添加环境变量
CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL=file:///F:/cordovaItem/gradle-8.10-all.zip
, 【打包时用】【注意linux是file://,windwo是file:///】 - 环境变量Path添加
F:\cordovaItem\gradle-8.10\bin
【打包时用】
1.4 修改项目的Gradle为国内镜像源
用vscode、NotePad++、记事本修改都行
进入myApp修改下面三个文件
./myApp/platforms/android/app/build.gradle
./myApp/platforms/android/build.gradle
./myApp/platforms/android/CordovaLib/build.gradle
buildscript {
repositories {
maven { url 'https://maven.aliyun.com/repository/public' }
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
maven { url 'https://maven.aliyun.com/repository/jcenter' }
google()
mavenCentral()
}
}
allprojects {
repositories {
maven { url 'https://maven.aliyun.com/repository/public' }
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
maven { url 'https://maven.aliyun.com/repository/jcenter' }
google()
mavenCentral()
}
}
1.5 Android Studio 拉取对应SDK
查看 ./myApp/cdv-gradle-config.json
的 "SDK_VERSION":33
,这里是33的版本。
Android Studio 添加SDK
1.6 Android Studio 配置环境变量
下面环境变量是Cordova需要的而已,不是Android Studio本身需要的,只是Cordova要使用Android Studio工具
1.7 Android Studio 打开项目, 拉取依赖
Android Studio 打开文件夹
./myApp/platforms/android
取消自动拉取,手动触发一次
自动拉取Android SDK Platform
拉取依赖成功
这里会有几个问题:
问题1:拉取依赖很慢? 答: build.gradle换国内镜像源;CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL配置;
问题2:gradle版本报错? 答: 官网下载对应版本,改改环境变量就好。
问题3:build Tool报错? 答: 在AndroidStudio的SDK设置里下载对应版本build Tool。
问题4:依赖在阿里云查询不到? 答: 换build.gradle镜像源。
1.8 运行
- Android Studio启动虚拟设备 不懂的点击链接
- CMD命令行执行
cd myApp
- CMD命令行执行
cordova run android
1.8 打包
- CMD命令行执行
cd myApp
- CMD命令行执行
cordova build android
至此,丹成。