开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 2354|回复: 0
收起左侧

[技术分享] uniapp打包发布自动化流程

[复制链接]
发表于 2021-10-29 20:41:20 | 显示全部楼层 |阅读模式   广东省揭阳市

小程序打包发布自动化流程

现有问题

  • 测试无法发布自己想要的版本。
  • vue的代码打包成VX小程序的代码。
  • 打包完成的代码,无法推送到VX开发者平台。
  • 构建完毕后,无法用对应的环境直接测试。

相关的依赖和配置

打包成VX需要的格式
  • vue-cli-service uni-build 安装对应的vue脚手架
  • 运维平台直接build成固定的VX包,不区分环境。构建完成的文件在 dist/dev/mp-weixin 里面
    "build": "cross-env NODE_ENV=prod UNI_PLATFORM=mp-weixin vue-cli-service uni-build --report",
     "prod": "cross-env NODE_ENV=prod UNI_PLATFORM=mp-weixin vue-cli-service uni-build --watch",
     "stg": "cross-env NODE_ENV=stg UNI_PLATFORM=mp-weixin vue-cli-service uni-build --watch",
推送打包完成的代码到VX平台
  • 安装 miniprogram-ci
  • 在开发 mp.weixin.qq.com/ 中开发管理/开发设置/小程序代码上传 指定固定的ip白名单
  • 在开发 mp.weixin.qq.com/ 中开发管理/开发设置/小程序代码上传 生成小程序代码上传密钥
    const ci = require('miniprogram-ci');
    const config = require('./config.json'); // 发布的版本信息
    const manifest = require('../manifest.json'); // VX小程序的基本信息
    let { wxVersion: version, wxDesc: desc } = config;
    const appid = manifest['mp-weixin'].appid;
    const cwd = process.cwd() + '/dist/dev/mp-weixin';
    if (!version) version = 'v1.0.0';
    if (!desc) desc = new Date() + '上传';
    const project = new ci.Project({
      appid: appid,
      type: 'miniProgram',
      projectPath: cwd,
      privateKeyPath: process.cwd() + '/src/wxupload/private.wxea2e525a470f0b4d.key', // 秘钥
      ignores: ['../node_modules/**/*'],
    });
  • 直接上传
    ci.upload({
        project,
        version,
        desc,
        setting: {
          minify: true,
    },
    }).then(res => {
        console.log(res)
        console.log('上传成功')
    }).catch(error => {
         if (error.errCode == -1) {
          console.log('上传成功')
         }
        console.log(error)
        console.log('上传失败')
        process.exit(-1)
    })
  • 发布完成也是带有预览功能,生成了二维码图片扫码使用。
至此的构建,上传,发布等功能已经完成。

使用方式

  • 运维平台从git 仓库拉去指定文件分支打包。
  • 拉取完毕执行 npm build 生成基于正式环境的打包的文件。
  • 测试需要测试环境的小程序,发布的时候需要选择对应的环境。
  • 运维平台替换前台指定的全局环境变量。
  • 替换后自动发布,自动预览。测试可以通过预览二维码进行访问具体的小程序。

开发流程

  • 用vscode进行开发,起对应的环境,默认开热更新。
  • 用VX小程序进行调试和预览。
  • VX配置文件里面 填写当前版本号和版本更新描述。


您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表