詳解cordova打包成webapp的方法

在項(xiàng)目開發(fā)中,需要將h6頁(yè)面打包成app,這個(gè)時(shí)候我們可以使用cordova來(lái)打包。在官方文檔中,我們可以了解到創(chuàng)建一個(gè)app十分簡(jiǎn)單,你的電腦上有nodejs就行,我們可以跟著官方文檔一步一步來(lái),添加安卓平臺(tái)和ios平臺(tái)。整個(gè)項(xiàng)目結(jié)構(gòu)搭建完畢后,我們可以將我們需要打包的webapp頁(yè)面全部塞到這個(gè)項(xiàng)目結(jié)構(gòu)中。接下來(lái)就是麻煩的地方了,如何進(jìn)行平臺(tái)開發(fā),也就是如何將我們的項(xiàng)目打包成一個(gè)可安裝的文件。

創(chuàng)新互聯(lián)專注于眉山網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供眉山營(yíng)銷型網(wǎng)站建設(shè),眉山網(wǎng)站制作、眉山網(wǎng)頁(yè)設(shè)計(jì)、眉山網(wǎng)站官網(wǎng)定制、小程序定制開發(fā)服務(wù),打造眉山網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供眉山網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。

一:設(shè)置環(huán)境變量:

1.設(shè)置JAVA_HOME環(huán)境變量,指定為JDK安裝路徑

2.設(shè)置ANDROID_HOME環(huán)境變量,指定為Android SDK安裝路徑

3.同時(shí)也要添加Android SDK的tools和platform-tools目錄到你的PATH

這里需要注意的是設(shè)置ANDROID_HOME環(huán)境變量,我們可以將android studio安裝到我們的電腦中,在安裝過(guò)程中android studio會(huì)自動(dòng)將Android SDK安裝到我們的電腦里,這個(gè)時(shí)候記住這個(gè)地址就行了,如圖(下面那一行的路徑就是Android SDK):

詳解cordova打包成webapp的方法

二:報(bào)這種錯(cuò)誤的時(shí)候:Error:Minimum supported Gradle version is xxxx.  Current version is xxxx.

當(dāng)時(shí)我在打包的時(shí)候報(bào)這鐘錯(cuò)誤,在網(wǎng)上查到了原因,是因?yàn)閍ndroid studio更新了Gradle的版本,這個(gè)時(shí)候解決的步驟如下:

1:打開android studio,找到setting,搜索gradle,如圖進(jìn)行設(shè)置(具體路徑各異):

詳解cordova打包成webapp的方法

三:Windows cordova build Error: Could not find gradle wrapper within Android SDK. Might need to update

解決辦法:

  1. 下載 Android SDK tools package(https://dl.google.com/android/repository/tools_r25.2.3-windows.zip)
  2. 進(jìn)入 C:\Users\\AppData\Local\Android\sdk目錄
  3. 備份tools目錄
  4. 將壓縮包中的tools目錄解壓到這個(gè)目錄下
  5. 進(jìn)入工程目錄,再次運(yùn)行 “cordova build android”。

四:安裝cordova-plugin-splashscreen報(bào)錯(cuò):

這個(gè)時(shí)候可能的原因是你已經(jīng)打包過(guò)apk文件了,你需要將apk文件刪除,然后再安裝。

五:打包vue項(xiàng)目時(shí)遇到的問(wèn)題

 1:使用npm run build打包到哪?

詳解cordova打包成webapp的方法

如圖,Qianne是我vue項(xiàng)目的名稱,我在這個(gè)文件夾打開了dos窗口,然后創(chuàng)建一個(gè)app框架,名為myApp1。然后我將config里index.js中修改:

index: path.resolve(__dirname, '../myApp1/www/index.html'),
 assetsRoot: path.resolve(__dirname, '../myApp1/www'),
 assetsSubDirectory: 'static',
 assetsPublicPath: './',

這里的路徑直接指向了myApp1下www文件夾。然后我們?cè)趘ue項(xiàng)目中運(yùn)行npm run build。這個(gè)時(shí)候我們就把打包后的文件直接放在了myApp1下www文件夾。此時(shí)我們還要將

cordova.js和cordova_plugins.js文件放進(jìn)www文件夾中,與index.html同級(jí)。(記住此時(shí)會(huì)覆蓋index.html,我們要將index.html中引用cordova.js的那句代碼復(fù)制到打包后的index.html中)。

2:直接打開打包后的index.html,路由居然沒作用?

我的解決辦法:

找到vue項(xiàng)目中的main.js,將其中路由的代碼的mode改為“hash”,我之前是“history”所以路由一直沒用

const router = new VueRouter({

 mode: 'hash',

 routes

}) 

之后我們?cè)俅虬淮?,如果打包后的index.html打開后路由正常,那么恭喜你。這個(gè)時(shí)候我們?cè)趍yApp1下進(jìn)入dos窗口,輸入cordova build android,打包成apk文件。

六:app的logo啟動(dòng)頁(yè)面應(yīng)該放在哪里?

詳解cordova打包成webapp的方法

 

在項(xiàng)目結(jié)構(gòu)中, 我們需要安裝splashscreen插件:

cordova plugin add cordova-plugin-splashscreen 

我們?cè)赾onfig.xml中插入以下代碼:

 <platform name="android">

  <allow-intent href="market:*" rel="external nofollow" />

   <icon density="ldpi" src="./res/icon/android/mipmap-ldpi/icon.png" />

  <icon density="mdpi" src="./res/icon/android/mipmap-mdpi/icon.png" />

  <icon density="hdpi" src="./res/icon/android/mipmap-hdpi/icon.png" />

  <icon density="xhdpi" src="./res/icon/android/mipmap-xhdpi/icon.png" />

  

  <!-- 以下是歡迎頁(yè)面,可根據(jù)需要進(jìn)行添加 -->

  <splash density="land-hdpi" src="./res/screen/android/drawable-land-hdpi/screen.png" /> 

  <splash density="land-ldpi" src="./res/screen/android/drawable-land-ldpi/screen.png" /> 

  <splash density="land-mdpi" src="./res/screen/android/drawable-land-mdpi/screen.png" /> 

  <splash density="land-xhdpi" src="./res/screen/android/drawable-land-xhdpi/screen.png" /> 

  <splash density="port-hdpi" src="./res/screen/android/drawable-port-hdpi/screen.png" /> 

  <splash density="port-ldpi" src="./res/screen/android/drawable-port-ldpi/screen.png" /> 

  <splash density="port-mdpi" src="./res/screen/android/drawable-port-mdpi/screen.png" /> 

  <splash density="port-xhdpi" src="./res/screen/android/drawable-port-xhdpi/screen.png" /> 

 </platform>

<platform name="ios"> 

 <!-- iOS 8.0+ --> 

 <!-- iPhone 6 Plus --> 

 <icon src="./res/icon/ios/icon-60@3x.png" width="180" height="180" /> 

 <!-- iOS 7.0+ --> 

 <!-- iPhone / iPod Touch --> 

 <icon src="./res/icon/ios/icon-60.png" width="60" height="60" /> 

 <icon src="./res/icon/ios/icon-60@2x.png" width="120" height="120" /> 

 <!-- iPad --> 

 <icon src="./res/icon/ios/icon-76.png" width="76" height="76" /> 

 <icon src="./res/icon/ios/icon-76@2x.png" width="152" height="152" /> 

 <!-- iOS 6.1 --> 

 <!-- Spotlight Icon --> 

 <icon src="./res/icon/ios/icon-40.png" width="40" height="40" /> 

 <icon src="./res/icon/ios/icon-40@2x.png" width="80" height="80" /> 

 <!-- iPhone / iPod Touch --> 

 <icon src="./res/icon/ios/icon.png" width="57" height="57" /> 

 <icon src="./res/icon/ios/icon@2x.png" width="114" height="114" /> 

 <!-- iPad --> 

 <icon src="./res/icon/ios/icon-72.png" width="72" height="72" /> 

 <icon src="./res/icon/ios/icon-72@2x.png" width="144" height="144" /> 

 <!-- iPhone Spotlight and Settings Icon --> 

 <icon src="./res/icon/ios/icon-small.png" width="29" height="29" /> 

 <icon src="./res/icon/ios/icon-small@2x.png" width="58" height="58" /> 

 <!-- iPad Spotlight and Settings Icon --> 

 <icon src="./res/icon/ios/icon-50.png" width="50" height="50" /> 

 <icon src="./res/icon/ios/icon-50@2x.png" width="100" height="100" /> 

 <!-- 以下是歡迎頁(yè)面,可根據(jù)需要進(jìn)行添加 -->

 <splash src="./res/screen/ios/Default~iphone.png" width="320" height="480"/> 

 <splash src="./res/screen/ios/Default@2x~iphone.png" width="640" height="960"/> 

 <splash src="./res/screen/ios/Default-Portrait~ipad.png" width="768" height="1024"/> 

 <splash src="./res/screen/ios/Default-Portrait@2x~ipad.png" width="1536" height="2048"/> 

 <splash src="./res/screen/ios/Default-Landscape~ipad.png" width="1024" height="768"/> 

 <splash src="./res/screen/ios/Default-Landscape@2x~ipad.png" width="2048" height="1536"/> 

 <splash src="./res/screen/ios/Default-568h@2x~iphone.png" width="640" height="1136"/> 

 <splash src="./res/screen/ios/Default-667h.png" width="750" height="1334"/> 

 <splash src="./res/screen/ios/Default-736h.png" width="1242" height="2208"/> 

 <splash src="./res/screen/ios/Default-Landscape-736h.png" width="2208" height="1242"/> 

</platform> 

同樣的,我們要在res文件夾下的對(duì)應(yīng)文件夾中放入相應(yīng)的logo或者圖片.

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。

標(biāo)題名稱:詳解cordova打包成webapp的方法
當(dāng)前URL:http://muchs.cn/article44/piojhe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、Google、網(wǎng)站維護(hù)、標(biāo)簽優(yōu)化、App設(shè)計(jì)關(guān)鍵詞優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)