更新记录

1.0.9(2023-12-14)

云函数对比异常

1.0.8(2023-11-22)

修复对比错误

1.0.7(2023-07-25)

免费使用,请大家多下载支持一下作者。

查看更多

平台兼容性

阿里云 腾讯云 支付宝云
×
Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
HBuilderX 3.4.14 app-vue × × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序
× × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
× × × × × × × × ×

云函数类插件通用教程

使用云函数类插件的前提是:使用HBuilderX 2.9+


geek-app-update

app升级、整包更新、热更新、强制更新、ios跳转更新、android跳转应用市场,间隔式提醒用户更新,所有细节都可在config.js中修改,自带后台管理系统,可创建多个应用,在各个应用内发布版本更新,支持wgt、原生app包上传并自动填充链接。

后台管理系统

我们为大家提供了一套后台系统,用来专门发布应用新版本。 后台管理系统

前端组件

导入插件到前端项目中后将unicloud的云空间和后台绑定为同一个即可。

组件使用示例(非热更新)

直接调用组件即可

<view class="">
    <geek-app-update></geek-app-update>
</view>

为了方便使用,将配置放在了 config.js ,可以前往文件修改,或者使用props传参的方式覆盖,推荐使用修改 config.js的方式。

组件使用示例(热更新)

引入 silentlyAppUpdate.js 即可,推荐将其引入到 APP.vueonLaunch 生命周期内或者根据实际业务需求修改。

// 示例
<script>
    // 静默更新
    import silentlyAppUpdate from '/src/uni_modules/geek-app-update/js-sdk/silentlyAppUpdate.js';
    export default {
        onLaunch: function() {
            silentlyAppUpdate();
        }
    }
</script>

检测升级流程

  1. 先从数据库取出所有该平台(从上下文读取平台信息,默认 Andriod)的所有线上发行更新
  2. 再从所有线上发行更新中取出版本最大的一版。如果可以,尽量先检测wgt的线上发行版更新
  3. 使用上步取出的版本包的版本号 和传参 appVersion、wgtVersion 来检测是否有更新,必须同时大于这两项,否则返回暂无更新
  4. 如果库中 wgt包 版本大于传参 appVersion,但是不满足 min_uni_version < appVersion,则不会使用wgt更新,会接着判断库中 app包version 是否大于 appVersion。

组件更新流程

  1. 检测升级流程执行完毕后且有更新且不为静默更新时会继续下面的流程,否则会跳过。
  2. 判断是否强制更新,如果强制更新,则用户无法关闭升级弹窗。
  3. 判断是否是wgt包,如果是的话,会提醒用户更新,并在更新后提醒用户是否重启。
  4. 判断是否为ios,如果是ios的话则会跳转至后台填写的appstore链接进行更新
  5. 否则为android,再判断本次更新是否有启用android应用市场,如果有会按照启用的应用市场的优先级尝试跳转至应用市场内更新,如果都不启动或者都跳转失败时,更新组件会进行应用内更新。

config.js props解析

属性名 说明 类型 默认值 可选值
themeColor 整体主题色(按钮、进度条、暂不更新图标颜色)也可以通过下方的其他属性来单独设置某一部分的颜色 String #61d287 -
bgColor 背景色 String #fff -
versionColor 版本号字体颜色 String #fff -
closeIconColor 关闭图标颜色 String #fff -
closeIconSize 关闭图标大小 Number 26 -
titleColor 更新标题文字颜色 String #5e5e5e -
contentColor 更新内容文字颜色 String #878787 -
notRemindIconSize 短期内不更新图标大小 Number 22 -
notRemindIconActColor 短期内不更新选中图标颜色 String '' -
notRemindIconNotActColor 短期内不更新未选中图标颜色 String #9d9d9d -
notRemindTextActColor 短期内不更新选中文字颜色 String #6b6b6b -
notRemindTextNotActColor 短期内不更新未选中文字颜色 String #9d9d9d -
downloadBtnTextIOS 下载按钮ios文字 String 立即跳转更新 -
downloadBtnTextAndroid 下载按钮Android文字 String 立即升级 -
downLoadingText 下载中文字提示 String 安装包下载中,请稍后 -
downloadSuccessText 下载完成文字提示 String 下载完成,立即安装 -
wgtInstallingText wgt安装中显示文字 String 正在安装.... -
wgtInstalledText wgt安装完成重启显示文字 String 安装完毕,点击重启 -
btnBgColor 按钮背景色 String '' -
btnColor 按钮文字颜色 String #fff -
progressColor 进度条颜色 String '' -
progressTextColor 进度条文字样式 String #4c4c4c -
intervalAlertUserUpdateDay 提示用户更新的间隔时间(只有用户拒绝更新时才会生效),单位day Number 7 -

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问