uniapp项目打包(安卓apk和微信小程序)

小程序 0

uniapp的打包方式有很多,这里主要讲解App打包成安卓apk和微信小程序的两种方式

请添加图片描述

原生App

原生App分为云打包和本地打包两种,一般只推荐使用云打包来快速打包成安卓apk

安卓正式包

请添加图片描述

勾选使用云端证书时,我们无需手动生成证书别名、证书私钥密码、证书文件等,uniapp官方已配置好云端证书可供一键打包

第一次打包时需要勾选传统打包,每个开发者账号每天是有一定的免费打包次数,传统打包会消耗该次数,次数用完了可以去官方后台购买,一次2块钱。但是在打过传统正式包之后,如果项目有代码更新需要再次打包,直接勾选快速安心打包即可,该种方式不会消耗打包次数,而且效率更高,但是需要基于该项目曾打过传统正式包的情况下。

安卓自定义调试基座

在上述截图中可以看到,和打正式包同级还有一个打自定义调试基座的选项

在开发安卓app时,不能像开发h5那样,一边修改代码,一边浏览器直接就能预览效果

因此uniapp官方提供的安卓调试基座的功能,该功能可以实现我们在修改代码的同时,连接电脑的真机上也能直接预览到app开发的效果

请添加图片描述

请添加图片描述

在你安卓手机连接上电脑后,hbuilderx会自动查找到你的安卓设备,此时有两个基座运行方式,一个是标准基座,一个是自定义基座

标准基座

标准基座可以理解为hbuilderx自带的基座,无需在打包页面勾选自定义基座打包,可直接使用,该基座上实现的功能或效果有时候和真机上体现出来的不太一样

自定义基座(推荐)

要想运行自定义基座,需要先在上述打包页面勾选自定义基座打包(一般需要我们先对uniapp项目中的manifest.json -> App常用其他设置 -> minSdkVersion 进行设置,一般要求最低21)

完成基座打包后,即可在运行项目中勾选使用自定义基座运行,该自定义基座跑出来的效果和正式包一致

微信小程序

微信小程序的打包需要配合微信开发者工具一起使用

先在微信官方文档下载 微信开发者工具

去微信公众平台创建一个小程序账号,填写各自小程序信息资料、类目等

请添加图片描述

拿到小程序的AppID和AppSecret(重要)

请添加图片描述

在uniapp项目的manifest.json -> 微信小程序配置 中填写该AppID字段,涉及到微信登录鉴权时,还需要在App模块配置 -> OAuth(登录鉴权) -> 微信登录 appid 中填写该AppID字段

然后还需在hbuilderx中的 工具 -> 运行设置 -> 小程序运行设置 中设置微信开发者工具的安装路径

请添加图片描述

然后在微信开发者工具的设置中打开服务端口

请添加图片描述

若没打开该服务端口,会报错:[微信小程序开发者工具] [error] 工具的服务端口已关闭。要使用命令行调用工具,请在下方输入 y 以确认开启,或手动打开工具 -> 设置 -> 安全设置,将服务端口开启。

至此可以让uniapp项目打包成微信小程序在开发者工具中运行了

注意:在运行项目的时候,需要让当前编辑器窗口高亮为需要运行的项目下的文件,不一定非要是App.vue,其他文件都可,只要是该要运行的项目下就行

请添加图片描述

点击发行 -> 小程序-微信

请添加图片描述

填写之前的微信小程序AppID,点击发行,控制台边开始编译,编译完成后,自动打开微信开发者工具运行项目,可能初始会有报错,只需在开发者工具中刷新一下重新编译即可

请添加图片描述

还需检查一下开发者工具中项目配置是否正确(重点检查AppId)

请添加图片描述

点击预览或者真机调试 扫码也可在真机上体验,前提是开发者才能体验,可以在公众平台上添加开发者或者测试人员

请添加图片描述

在代码无误的情况下,可以在开发者工具中对小程序进行上传(上传过的点确认覆盖就行)

请添加图片描述

编辑版本号后确认上传

请添加图片描述

代码质量中可能经常会出现部分未通过,这些可能是因为部分代码有些不规范导致的,但是只要保证主包大小小于2M,其他的未通过可以无视,不影响上传。

在公众平台上的版本管理可查看当前项目的版本发布情况

请添加图片描述

项目第一次上传体验版,需要根据说明填写审核资料

还需要配置主页面路径

请添加图片描述

请添加图片描述

完成之后,便可点击体验版二维码进行扫描体验

在之后,便可点击提交发布审核版本

审核版本审批通过后,便可发行线上正式版本,至此微信用户便可在微信中搜索该小程序

本篇文章主要讲述uniapp打包发布微信小程序版本过程,可能未涵盖到微信小程序其他更多配置模块,例如在公众平台上配置api白名单等,更完整的教程还请移步微信官方文档或微信公众平台

也许您对下面的内容还感兴趣: