【uni-app】多端打包

小兔鲜儿 - 项目打包

微信小程序端

把当前 uni-app 项目打包成微信小程序端,并发布上线。

核心步骤

  1. 运行打包命令 pnpm build:mp-weixin
  2. 预览和测试,微信开发者工具导入生成的 /dist/build/mp-weixin 目录
  3. 在微信开发者工具上传小程序代码(修改补丁)
  4. 微信公众平台(版本管理)提交审核和发布

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

步骤图示

项目打包上线需要使用到多个工具,注意工具之间的职责。

VSCode/WebStorm ----> 微信开发者工具 ----> 微信公众平台

了解:开发者也可独立使用 miniprogram-ci 进行小程序代码的上传等操作。

打包成其他小程序端的步骤类似,只是更换了 打包命令开发者工具

条件编译

Q:按照 uni-app 规范开发可保证多平台兼容,但每个平台有自己的一些特性,该如何处理?

A:通过 条件编译,让代码按条件编译到指定平台。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

网页端不支持微信平台授权登录等功能,可通过 条件编译,实现不同端渲染不同的登录界面。

条件编译语法

通过特殊注释,以 #ifdef#ifndef平台名称 开头,以 #endif 结尾。

多平台编译:#ifdef H5 || MP-WEIXIN 表示在 H5 端 或 微信小程序端 代码。

条件编译支持: 支持 .vue, .ts, .js, .scss, .css, pages.json 等文件。

<script setup lang="ts">
// 微信平台特有API,需要条件编译
// #ifdef MP-WEIXIN
wx.login()
wx.requestPayment()
// #endif
</script>

<template>
  <!-- 微信开发能力按钮,需要条件编译 -->
  <!-- #ifdef MP-WEIXIN -->
  <button open-type="openSetting">授权管理</button>
  <button open-type="feedback">问题反馈</button>
  <button open-type="contact">联系我们</button>
  <!-- #endif -->
</template>

<style>
/* 如果出现样式兼容,也可添加条件编译 */
page {
  /* #ifdef H5 */
  background-color: pink;
  /* #endif */
}
</style>

可通过搜索 wx.open-type 等平台关键词,快速查找需要小程序端需添加编译模式的代码。

打包为 H5 端

把当前 uni-app 项目打包成网页(H5)端,并配置路由基础路径。

核心步骤

  1. 运行打包命令 pnpm build:h5
  2. 预览和测试,使用浏览器打开 /dist/build/h5 目录下的 index.html 文件
  3. 由运维部署到服务器

路由基础路径

默认的路由基础路径为 / 根路径,部分网站并不是部署到根路径,需要按运维要求调整。

// manifest.json
{
  /* 网页端特有配置 */
  "h5": {
    "router": {
      // 基础路径:./ 为相对路径
      "base": "./"
    }
  } /* 小程序特有相关 */,
  "mp-weixin": {
    // …省略
  },
  "vueVersion": "3"
}

打包为 APP 端

预览调试

App 端 的打包,预览、测试、发行,使用 HBuilderX 工具。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在这里插入图片描述

手机开启开发者模式,我这里以 红米 K50 为例:

  1. 设置里面搜 版本,选择 MIUI 版本
  2. 然后多次点击 MIUI 版本,知道出现提示 您已处于开发者模式,无需进行此操作 为止
  3. 然后回到设置中的搜索框,搜索 开发者 ,开启 开发者选项USB 调试USB 安装即可

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

到此,可以正常在 APP 端进行编译调试。

在调试时可能出现版本不匹配的问题:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

我们需要更新依赖到指定版本:uni-app官网 (dcloud.net.cn)

更新到正式版指定版本

npx @dcloudio/uvm@latest 3.8.12

云打包

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

使用云端证书:

使用云端证书,点击详情

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

证书创建完成之后,无需下载,就可以直接使用了。

之后在云打包的配置中,选择正式打包,下面的广告联盟全部不勾选,再选择快速安心打包,最后点击打包。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

打包完成之后在文件夹中打开,得到一个 apk 文件,就是APP 的安装包,可以点击右键安装到手机,也可以直接把安装包供别人下载。

ios 端打包类似,只不过需要换到 mac 电脑,而且最好使用模拟器等方便操作,因为 hbuilder 打包后 ios 官方会有限制。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秀秀_heo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值