cordova+vue 項目打包成APK應用遇到的問題和解決方法


公司前端界面用的是vue,我要嵌入到Android中生成App
第一步:安裝node
node安裝:直接進入官網https://nodejs.org/zh-cn/,下載最新版本安裝。安裝之后在命令行中使用”node -v” 檢查安裝是否成功。
npm安裝:由於新版的nodejs已經集成了npm,所以node安裝時npm也一並安裝好了。同樣可以通過輸入 “npm -v” 來測試是否成功安裝。
第二步:安裝cordova
1. 打開cmd 輸入命令:npm install -g cordova .安裝cordova
2. 驗證是否安裝成功,cmd中輸入命令:  cordova -v 如下圖為安裝成功

   

第三步:新建cordova項目

1.(進入到Android項目的工作空間,輸入命令:cordova create DianChiApp com.dhsr.dianchi Dianchi),如下圖:

 

2. 輸入命令:cordova platform add android 生成Android平台的cordova庫,這時platforms文件夾中會生成一個android文件夾

   生成的項目目錄如圖:

第四步:打包APK前測試

1. 先檢查androidsdk是否正確安裝,執行命令cordova requirements 成功情況如下圖:

第五步:正式打包APK

輸入命令:cordova build android

這步錯誤率很高 我的報錯:

Error occurred during initialization of VM Could not reserve enough space for 2097152KB object heap

    Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Failed to install 'cordova-plugin-whitelist':Error: cmd: Command failed with exit code 1 at ChildProcess.whenDone (D:\CordovaSpace\helloWorld\platforms\android\cordova\node_modules\cordova-common\src\superspawn.js:169:23) at emitTwo (events.js:106:13) at ChildProcess.emit (events.js:191:7) at maybeClose (internalild_process.js:850:16) at Process.ChildProcess._handle.onexit (internalild_process.js:215:5) Error: cmd: Command failed with exit code 1
在百度找了很多解決辦法 改變AS的內存等都沒有解決

 最終解決辦法是: 在環境變量中添加一個系統變量,變量名:_JAVA_OPTIONS,變量值:-Xmx512M(這個絕對有效,沒用的話重啟電腦重試)

命令運行成功后打包完成,在真機中運行即可

 

附加:打包簽名版apk

1. cmd中進入項目目錄 輸入命令:cordova build --release android,如下圖:(成功后項目文件下會多出一個name.keystore文件,項目的app\build\outputs\apk\release下面會多處一個未簽名的apk)

 

 2. 上步執行完成后輸入命令:keytool -genkeypair -alias name.keystore -keyalg RSA -validity 4000 -keystore name.keystore  如下圖:(填寫簽名需要的信息)

3. 上步運行成功功后,將name.keystore文件和app\build\outputs\apk\release下面會多處一個未簽名的apk放到同一個文件夾下邊,並將apk重命名為:name_unsigned.apk ,如圖:

進入到兩個文件所在的文件夾下,我的是:D:\setup\androidCompanyProjectWorkSpace\DianChiApp\platforms\android\app\build\outputs\apk\release

cmd中執行命令:jarsigner -verbose -keystore name.keystore -signedjar name.apk name_unsigned.apk name.keystore  如下圖:

運行成功后多處一個name.apk的簽名文件  如下圖:(成功)

 

 

 

 

備忘,希望能幫助到大家

 

 

 

  

 


 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM