带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

代码哈士奇
• 阅读 1769

我完成了uni-app手机app开发,如何让他更新呢 我来告诉你 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

说明:分两块,一块是应用升级管理系统,一个是应用检测自己版本及更新

我是代码哈士奇 此文章来源为代码哈士奇,个人主页: https://dmhsq.blog.csdn.net/ https://www.helloworld.net/dmhsq 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级) 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

@TOC

uni-upgrade-center - Admin搭建升级中心

带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

创建uni-admin模板应用

我们之前已经讲了如何搭建uni-admin系统

之所以先创建uni-admin模板应用 是因为uni-upgrade-center - Admin是需要搭载在uni-admin上的

全流程如下

升级中心搭建全流程

新建项目

带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

引入插件

插件市场引入 https://ext.dcloud.net.cn/plugin?id=4470

带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

安装第三方依赖

带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

上传云函数

带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

初始化 db_init.json

带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

添加以下页面路径

在pages.json中添加

{
            "path": "uni_modules/uni-upgrade-center/pages/version/list",
            "style": {
                "navigationBarTitleText": "版本列表"
            }
        }, {
            "path": "uni_modules/uni-upgrade-center/pages/version/add",
            "style": {
                "navigationBarTitleText": "新版发布"
            }
        }, {
            "path": "uni_modules/uni-upgrade-center/pages/version/detail",
            "style": {
                "navigationBarTitleText": "版本信息查看"
            }
        }, {
            "path": "uni_modules/uni-upgrade-center/pages/app/list",
            "style": {
                "navigationBarTitleText": "应用列表"
            }
        }, {
            "path": "uni_modules/uni-upgrade-center/pages/app/detail",
            "style": {
                "navigationBarTitleText": "应用信息查看"
            }
        }, {
            "path": "uni_modules/uni-upgrade-center/pages/app/add",
            "style": {
                "navigationBarTitleText": "新增应用"
            }
        }

效果为 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

在源码视图添加

在manifest.json添加

"networkTimeout":{
    "uploadFile":1200000    //ms, 如果不配置,上传大文件可能会超时
}

效果为 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

初始化uni-admin模板应用的data

注意是 db_init.json 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级) 选中需要的数据表

如果提示没有菜单那几个数据有就创建 搭建uni-admin系统

运行到浏览器

注册管理员账号并且登陆

找到菜单设置

带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

添加即可 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级) 到此完成搭建 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

应用升级搭建全流程

假设我们已经有了一个开发好的应用,我们想让他带有更新检测,自动检测,强制更新等等,如何做呢?来吧,小弟带你走下流程~

这里我们准备了一个应用,就是uni-app的默认模板

带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

引入插件

https://ext.dcloud.net.cn/plugin?id=4542

带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

创建数据表

在服务空间创建模板表 其它里面 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

上传部署云函数

带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

添加页面路径

在pages.json添加以下代码

{
        "path": "uni_modules/uni-upgrade-center-app/pages/upgrade-popup",
        "style": {
            "disableScroll": true,
            "app-plus": {
                "backgroundColorTop": "transparent",
                "background": "transparent",
                "titleNView": false,
                "scrollIndicator": false,
                "popGesture": "none",
                "animationType": "fade-in",
                "animationDuration": 200

            }
        }
    }

效果如下 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

引入主要的js

这里我在 pages/index/index.vue中引入 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

升级测试

发布后获取的为真实app版本以及appid此步为测试

升级中心新增应用

在我们之前搭建好的升级中心 添加应用 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级))带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

打包1.0.0版本

我们先搞一个1.0.0版本进行测试 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级) 云打包 (可不选择云打包,这里只是方便测试) 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级) 打包完成会生成一个apk 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

发布1.0.0版本

在我们之前搭建好的升级中心点击版本管理 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级) 发布新版 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级) 我们是云打包 所以选择 原生App安装包 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

包地址可选择上传文件 ,上传完成会自动生成 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

我们此时可以用手机测试,或者模拟器

特别注意

调试的时候,获取的appid以及版本号不是你的,而是Hbuilder和13.1.2 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级) 这个时候 我们可以本地修改

找到 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级) 修改appid 以及版本号 appid可以在 manifest.json找到 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级) 这个时候 我们代表模拟器上版本是1.0.0

打包发布1.0.1

此时我们将manifest.json 的版本名称以及版本号改为1.0.1 101

再次云打包

获得一个新的apk 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级) 在升级中心发布新版本

带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

升级测试

在模拟器中测试 哈哈哈 船新版本~ 带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

带你使用uni-upgrade-center搭建APP更新系统(升级中心+应用升级)

点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Jacquelyn38 Jacquelyn38
2年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
代码哈士奇 代码哈士奇
2年前
手把手带你使用uni-admin搭建后台管理系统
我们一般写应用都需要有后台管理系统,那么uniapp也不例外。本次内容假设我们已经完成了一个uniappuniCloud开发的程序。默认我们已经搭建好了服务空间。如果你还不知道服务空间如何创建,移步uniadmin和应用共用同一个服务空间此文章在华为云社区为首发我是代码哈士奇此文章来源为代码哈士奇,个人主页:创建uniadmin模板应用这里使用uni
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Stella981 Stella981
2年前
Service starting has been prevented by iaware or trustsbase sInfo ServiceInfo 解决方法
问题:ActivityManager:ServicestartinghasbeenpreventedbyiawareortrustsbasesInfoServiceInfo{c50ea35xxx.xxx.xxx.ServiceName}问题描述,该问题再华为部分手机升级到Android10.1之后,启动服务会
Stella981 Stella981
2年前
Android So动态加载 优雅实现与原理分析
背景:漫品Android客户端集成适配转换功能(基于目标识别(So库35M)和人脸识别库(5M)),导致apk体积50M左右,为优化客户端体验,决定实现So文件动态加载.!(https://oscimg.oschina.net/oscnet/00d1ff90e4b34869664fef59e3ec3fdd20b.png)点击上方“蓝字”关注我
Wesley13 Wesley13
2年前
(绝对有用)iOS获取UUID,并使用keychain存储
UDID被弃用,使用UUID来作为设备的唯一标识。获取到UUID后,如果用NSUserDefaults存储,当程序被卸载后重装时,再获得的UUID和之前就不同了。使用keychain存储可以保证程序卸载重装时,UUID不变。但当刷机或者升级系统后,UUID还是会改变的。但这仍是目前为止最佳的解决办法了,如果有更好的解决办法,欢迎留言。(我整理的解决办法的参
Wesley13 Wesley13
2年前
35岁是技术人的天花板吗?
35岁是技术人的天花板吗?我非常不认同“35岁现象”,人类没有那么脆弱,人类的智力不会说是35岁之后就停止发展,更不是说35岁之后就没有机会了。马云35岁还在教书,任正非35岁还在工厂上班。为什么技术人员到35岁就应该退役了呢?所以35岁根本就不是一个问题,我今年已经37岁了,我发现我才刚刚找到自己的节奏,刚刚上路。
Stella981 Stella981
2年前
ReactNative state更新,视图不更新的问题
开发中遇到这样的问题,我更新了state一个数组的某个元素的选中状态,打印出的数据也显示修改正确了,但是界面却没更新。例如下图点击某项修改选中状态。!(https://oscimg.oschina.net/oscnet/c3291a62b5f638d1e35dd7a719ade39f226.png)代码中之前是这样写的,结果界面没有更新。
Python进阶者 Python进阶者
1个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这