uniapp開發(fā)打包多端應(yīng)用完整方法指南
一、uni-app項(xiàng)目介紹
用uni-app開發(fā)多端項(xiàng)目,一套代碼可同時(shí)打包出各端小程序、h5和app,uni-app支持通過 HBuilderX可視化界面 和 vue-cli命令行 兩種方式創(chuàng)建項(xiàng)目,下面示例項(xiàng)目采用 HBuilderX可視化界面 的方式創(chuàng)建,cli項(xiàng)目可參考uni文檔,大部分流程都是通用的。
項(xiàng)目結(jié)構(gòu):
├── components 公用組件
├── libs 公共方法
├── pages 頁面
├── static 本地靜態(tài)資源,注意:靜態(tài)資源只能存放于此
├── store 狀態(tài)管理
├── styles 公共樣式
├── config.js 配置文件
├── manifest.json 配置應(yīng)用名稱、appid、logo、版本等打包信息,詳見
├── pages.json 配置頁面路由、導(dǎo)航條、選項(xiàng)卡等頁面類信息
└── unpackage
├── res 圖標(biāo)、啟動(dòng)頁
├── cert APP證書文件
└── dist 打包的文件
拿到源碼先修改 config.js 里的 api 請求接口地址,改成你自己的請求域名,然后 manifest.json 里各平臺(tái)的 appid 改成你自己小程序的 appid:
相關(guān)開發(fā)文檔:
二、注冊開發(fā)者賬號(hào)和創(chuàng)建應(yīng)用
開始開發(fā)前需要先去uni的開發(fā)者后臺(tái)注冊一個(gè)賬號(hào),登錄注冊地址:https://dev.dcloud.net.cn/,然后在里面創(chuàng)建一個(gè)你自己的應(yīng)用:
三、安裝開發(fā)工具HBuilderX
HBuilderX,簡稱HX,是輕如編輯器,強(qiáng)如IDE的合體版本,有點(diǎn)像vscode和小程序開發(fā)工具的結(jié)合體,頂部菜單欄有一個(gè)“運(yùn)行”和“發(fā)行”的菜單,直接點(diǎn)擊:運(yùn)行 —— 運(yùn)行到內(nèi)置瀏覽器,可以直接像在瀏覽器里一樣調(diào)試。
發(fā)布App時(shí),需要使用HBuilderX,其他開發(fā)工具無法發(fā)布App,但可以發(fā)布H5、各種小程序。如需開發(fā)App,可以先在HBuilderX里運(yùn)行起來,然后在其他編輯器里修改保存代碼,代碼修改后會(huì)自動(dòng)同步到手機(jī)基座。HBuilderX下載地址:https://www.dcloud.io/hbuilderx.html。
四、新建和運(yùn)行項(xiàng)目
先安裝一些常用的插件:
- 內(nèi)置瀏覽器
- uni-app(Vue2)編譯
- uni-app(Vue3)編譯
- App真機(jī)運(yùn)行
- App云打包
- scss/sass編譯
- stylus編譯
創(chuàng)建項(xiàng)目創(chuàng)建新項(xiàng)目可以通過HBuilderX頂部菜單:文件 - 新建 - 項(xiàng)目,導(dǎo)入已有項(xiàng)目:文件 - 導(dǎo)入 - 從...
運(yùn)行項(xiàng)目運(yùn)行項(xiàng)目通過HBuilderX頂部菜單:運(yùn)行 - 運(yùn)行到...,開發(fā)階段可先選擇:運(yùn)行到內(nèi)置瀏覽器,如果有報(bào)錯(cuò)缺少xx插件,直接根據(jù)提示去安裝對應(yīng)插件,再重新運(yùn)行就可以了。
五、小程序和H5打包
各平臺(tái)的配置可以直接在manifest.json里配置,或者在HBuilderX開發(fā)工具里選中manifest.json文件,右側(cè)會(huì)出現(xiàn)圖形化界面直接選擇配置
先運(yùn)行起來,然后點(diǎn)擊:發(fā)行 - 小程序/網(wǎng)站 - 設(shè)置小程序/網(wǎng)站名字/appid/域名,打包成功后可以在dist - build 文件夾下找到對應(yīng)平臺(tái)的打包文件(dist - dev 目錄下對應(yīng)的是各平臺(tái)運(yùn)行文件)
六、安卓應(yīng)用打包
1、點(diǎn)擊:發(fā)行 - 原生App-云打包
2、按照unpackage/cert目錄下的README.md說明填寫:Android包名、證書別名、證書私鑰密碼、選擇證書文件(直接點(diǎn)瀏覽按鈕,選到 unpackage/cert 目錄,Android開發(fā)證書生成參考文末的說明)
3、點(diǎn)擊打包按鈕
七、IOS應(yīng)用打包
1、點(diǎn)擊:發(fā)行 - 原生App-云打包
2、按照unpackage/cert目錄下的 README.md 說明填寫:Bundle ID(AppID)、證書私鑰密碼、證書profile文件和私鑰證書(直接點(diǎn)瀏覽按鈕,選到 unpackage/cert 目錄)
3、點(diǎn)擊打包按鈕
使用云打包點(diǎn)擊了打包按鈕后,需要等待一段時(shí)間,少則幾分鐘,多則大半天...最終打包成功后會(huì)在控制臺(tái)打印出app安裝文件的下載地址:
Android:apk文件,直接點(diǎn)擊“打開所在目錄”,生成的apk文件在 unpackage/release/apk文件夾下
IOS: ipa文件,直接點(diǎn)擊“下載地址”,遠(yuǎn)程下載到本地
打包證書相關(guān)資料:
Android平臺(tái)云端打包證書使用說明
Android平臺(tái)云端打包 - DCloud公用證書(DCloud老版證書)
Android平臺(tái)簽名證書(.keystore)生成指南
iOS證書(.p12)和描述文件(.mobileprovision)申請
八、發(fā)布上線
1、小程序直接用小程序開發(fā)者工具導(dǎo)入 dist - build 文件夾下對應(yīng)的目錄,如微信小程序:dist/build/mp-weixin
2、H5和web網(wǎng)站一樣,將最終打包出來的H5文件部署到線上:dist/build/h5
3、Android
- 最終生成的apk文件,可以直接用聊天工具發(fā)送到安卓手機(jī)上安裝使用
- 去注冊各大安卓應(yīng)用市場賬號(hào),上傳到應(yīng)用市場供用戶下載
- 也可以自己開發(fā)一個(gè)發(fā)布頁,將安卓apk放到項(xiàng)目里,用戶點(diǎn)擊直接下載到手機(jī)里,如果設(shè)備是ios還可以直接判斷讓跳轉(zhuǎn)到appstore下載地址
4、IOS① 正式版本
ios正式應(yīng)用只能從app store里下載,需要先注冊蘋果開發(fā)者賬號(hào),填寫各項(xiàng)應(yīng)用資料,上傳ipa文件審核通過后才能下載使用
② 測試版本
ios-app測試時(shí),將ipa文件上傳到蒲公英上:https://www.pgyer.com/
用有授權(quán)的蘋果手機(jī)掃描二維碼在Safari瀏覽器里打開即可直接下載安裝,或者直接在safari瀏覽器中輸入“下載地址”
附:windows下生成安卓開發(fā)證書
Android平臺(tái)打包發(fā)布apk應(yīng)用,需要使用數(shù)字證書(.keystore文件)進(jìn)行簽名,用于表明開發(fā)者身份,Android證書的生成是自助和免費(fèi)的,不需要審批或付費(fèi)。
可以使用JRE環(huán)境中的keytool命令生成,以下是windows平臺(tái)生成證書的方法:
1、安裝JRE環(huán)境可從Oracle官方下載jre安裝包:https://www.oracle.com/technetwork/java/javase/downloads/index.html(記住安裝的路徑,后面生成證書的時(shí)候要用到)
2、打開命令行(cmd),可以先切換到要生成的目錄下
我直接在D盤根目錄下生成輸入:
d:
3、將JRE安裝路徑添加到系統(tǒng)環(huán)境變量
我的JRE裝在D盤下 "D:\Programs\jre\bin"
set PATH=%PATH%;"D:\Programs\jre\bin"
注意這里安裝路徑不要寫錯(cuò)了,我這里剛開始路徑里 Programs 就少了個(gè)s,后面就一直報(bào)錯(cuò):keytool不是內(nèi)部或外部命令,也不是可運(yùn)行的程序
4、使用keytool -genkey命令生成證書
keytool -genkey -alias testalias -keyalg RSA -keysize 2048 -validity 36500 -keystore android.keystore
- testalias:是證書別名,可修改為自己想設(shè)置的字符,建議使用英文字母和數(shù)字
- android.keystore:是證書文件名稱,可修改為自己想設(shè)置的文件名稱,也可以指定完整文件路徑
- 36500:是證書的有效期,表示100年有效期,單位天,建議時(shí)間設(shè)置長一點(diǎn),避免證書過期
按提示輸入信息后就會(huì)在D盤根目錄下生成 android.keystore 文件,這個(gè)文件就可以用來直接打包安卓app了
- uniapp使用高德地圖的超詳細(xì)步驟
- uniapp實(shí)現(xiàn)h5、app與微信小程序三端pdf文件下載和預(yù)覽功能
- uniapp微信小程序打卡功能的詳細(xì)實(shí)現(xiàn)流程
- 手把手教你寫一個(gè)uniapp通用頁面組件
- uniapp頁面間傳參的幾種方法實(shí)例總結(jié)
- uniapp打包安卓App的兩種方式(云打包、本地打包)方法詳解
- 使用uniapp打包上架微信小程序完整教程
- uniApp微信小程序使用騰訊地圖定位功能及getLocation需要在app.json中聲明permission字段問題解決
- uniapp語音識(shí)別(訊飛語音)轉(zhuǎn)文字
- uniapp使用條件編譯#ifdef(跨平臺(tái)設(shè)備兼容)
相關(guān)文章
Vue利用computed解決單項(xiàng)數(shù)據(jù)流的問題
Vue是一個(gè)非常流行和強(qiáng)大的前端框架,它讓我們可以用簡潔和優(yōu)雅的方式來構(gòu)建用戶界面,但是,Vue也有一些需要注意和掌握的細(xì)節(jié)和技巧,今天我們來分享一個(gè)Vue中非常經(jīng)典的問題,也是一個(gè)非常實(shí)用的技巧,Vue利用computed解決單項(xiàng)數(shù)據(jù)流,需要的朋友可以參考下2023-08-08vue的路由守衛(wèi)和keep-alive后生命周期詳解
這篇文章主要為大家詳細(xì)介紹了vue路由守衛(wèi)和keep-alive,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-03-03Vue調(diào)試工具vue-devtools的安裝與使用
vue-devtools是專門調(diào)試vue項(xiàng)目的調(diào)試工具,安裝成功之后,右邊會(huì)出現(xiàn)一個(gè)vue,就可以在線可以調(diào)試vue了,下面這篇文章主要給大家介紹了關(guān)于Vue調(diào)試工具vue-devtools的安裝與使用的相關(guān)資料,需要的朋友可以參考下2022-07-07