一. 打包vue
vue項目開發完成後,html
使用 npm run buildvue
打包成功以後,打開生成的dist文件夾中的 index.html,看看是否是ok的,沒問題就繼續下一步。java
二. 使用cordova打包android項目
1. 新建cordova項目
全局安裝cordova:android
npm install -g cordova算法
建立cordova項目:npm
cordova create android-app com.dls myappjson
其中android-app是項目目錄,com.dls是包名,myapp是應用程序的顯示標題app
2. 複製vue項目中 dist 下面得文件,到建立好的 android-app 項目的 www 文件下工具
3.打包android項目
進入剛纔建立的android-aap目錄:ui
cd android-app
而後打包android:
cordova platforms add android --save
打包過程有點慢,第一次打包的時候,我還覺得掛了,又來了一遍,打包好以後,就會生成這些文件。
4. 打包成apk的準備工做
檢查工具是否安裝好(須要安裝Android Studio):
cordova requirements
JDK、SDK、Gradle沒問題就能夠開始了(注意保證環境變量配置正確)
所需工具:
(1)下載 java jdk ,網盤地址 :https://pan.baidu.com/s/1rG4P31PCuVcObp2AcRlptQ 提取碼: 3rcj
配置系統環境變量:
(a)新建->變量名"JAVA_HOME",變量值"C:\Java\jdk1.8.0_05"(即JDK的安裝路徑)
(b)編輯->變量名"Path",在原變量值的最後面加上「%JAVA_HOME%\bin」
(c)新建->變量名「CLASSPATH」,變量 值「%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar」
在控制檯分別輸入java,javac,java -version 命令,檢查配置成功
(2)到android studio 官網下載android SDK工具
安裝完成以後,配置 SDK環境變量:
(a)新建->變量名"ANDROID_HOME",變量值"D:\software\android-SDK"(即SDK的安裝路徑)
(b)編輯->變量名"Path",在原變量值的最後面加上「%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools」
打開命令行,輸入adb,查看結果
5.生成apk(可參考:https://www.cnblogs.com/qirui/p/8421372.html)
生成簽名:
keytool -genkey -v -keystore D:\mytest.keystore -alias mytest -keyalg RSA -validity 20000
*-keystore D:/mytest.keystore表示生成的證書及其存放路徑,若是直接寫文件名則默認生成在用戶當前目錄下;
-alias mytest 表示證書的別名是mytest,不寫這一項的話證書名字默認是mykey;
-keyalg RSA 表示採用的RSA算法;
-validity 20000表示證書的有效期是20000天。*
(1)方法一:
生成未簽名的apk:
cordova build android --release
將生成的 簽名文件 mytest.keystore 放到未簽名的 apk 文件所在目錄下
把數字簽名放到生成的未簽名的apk所在的目錄下,輸入如下命令:
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore mytest.keystore app-release-unsigned.apk mytest
(2)方法二:
直接生成帶簽名的apk ,數字簽名須要放在cordova項目根目錄下:
cordova build android --release --keystore="mytest.keystore" --alias=mytest --storePassword=testing --password=testing1
注: keystore 後面是數字簽名證書, –alias 後面是別名 storePassword 後面是密鑰庫口令 password 後面是密鑰口令
也能夠:
在cordova項目根目錄下,新建一個 build.json 文件
{
"android": {
"release": {
"keystore": "mytest.keystore",
"alias": "mytest",
"storePassword": "",
"password": ""
}
}
}
密碼能夠去掉,而後使用:
cordova build --release
注:cordova build後面沒有android