Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-unicloud-zh
提交
245b664a
U
unidocs-unicloud-zh
项目概览
DCloud
/
unidocs-unicloud-zh
通知
84
Star
2
Fork
20
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
9
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
unidocs-unicloud-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
9
合并请求
9
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
245b664a
编写于
10月 30, 2024
作者:
D
DCloud_LXH
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat(upgrade-center): 0.9.0
上级
a50d5530
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
52 addition
and
36 deletion
+52
-36
docs/upgrade-center.md
docs/upgrade-center.md
+52
-36
未找到文件。
docs/upgrade-center.md
浏览文件 @
245b664a
...
...
@@ -17,8 +17,6 @@ App升级中心 uni-upgrade-center,提供了 App 的版本更新服务。包
-
数据库遵循
[
opendb
](
https://uniapp.dcloud.net.cn/uniCloud/opendb.html
)
规范
-
**关于应用转让后升级中心(uni-upgrade-center)的使用问题**
[
详情
](
https://ask.dcloud.net.cn/article/40112
)
从 uni-upgrade-center
`v0.7.0`
版本起,开始支持uni-app x。
为了一套代码同时兼容uni-app和uni-app x,升级中心原本的 js 文件改为了 ts 文件。如果开发者的项目下未使用ts,那么需要增加ts编译。HBuilderX项目会自动加载ts编译器,cli项目则需要自己手动配置。
### 为什么需要升级中心?
...
...
@@ -180,16 +178,18 @@ App升级中心 uni-upgrade-center,提供了 App 的版本更新服务。包
<pre
v-pre=
""
data-lang=
""
>
<code
class=
"lang-"
style=
"padding:0"
>
┌─uniCloud 云空间目录,在 uni-upgrade-center-app 组件中为空,占位使用
│─components 符合 easycom 组件规范的组件目录
│ └─uni-upgrade-center-app
│ └─uni-upgrade-center-app.uvue uni-app x 项目中要使用到的升级中心弹窗组件,如果需要自定义弹窗样式,可以修改此组件
<s>
│─components
</s>
(0.9.0 版本起删除,请使用
`pages/uni-app-x/upgrade-popup.vue`
)
<s>
│ └─uni-upgrade-center-app
</s>
(0.9.0 版本起删除,请使用
`pages/uni-app-x/upgrade-popup.vue`
)
<s>
│ └─uni-upgrade-center-app.uvue
</s>
(0.9.0 版本起删除,请使用
`pages/uni-app-x/upgrade-popup.vue`
)
├─pages 页面文件存放的目录
│ ├─uni-app-x
│ │ └─upgrade-popup.vue uni-app x 项目中要使用到的升级中心弹窗页面,如果需要自定义弹窗样式,可以修改此页面,使用请看
<a
href=
"https://doc.dcloud.net.cn/uni-app-x/api/dialog-page.html"
>
dialogPage
</a>
│ └─upgrade-popup.vue uni-app 项目中要使用到的升级中心页面,如果需要自定义样式,可以修改此页面
├─static 存放升级中心引用的静态资源(图片)的目录,如需自定义样式,可以替换此目录下的图片
├─utils 存放升级中心引用的工具函数的目录
│ ├─call-check-version.ts 升级中心请求云端函数方法,调用 uni-upgrade-center 云函数,获取 App 版本信息
│ ├─check-update.ts 调用升级中心方法,检查更新,并根据结果判断是否显示更新弹框
│ └─
utils.uts uni-app x 项目中要使用到到工具函数,openSchema 为打开应用外部链接方法
│ └─
check-update-nvue.js 由于 uni-app 项目
`nvue`
页面不支持 ts ,因此调用检查更新函数在这里导出
├─changelog.md uni-upgrade-center-app 更新日志
├─package.json uni-upgrade-center-app 插件信息日志
└─readme.md uni-upgrade-center-app 说明文档
...
...
@@ -252,7 +252,25 @@ App升级中心 uni-upgrade-center,提供了 App 的版本更新服务。包
2.
默认使用当前绑定的服务空间,如果要请求其他服务空间,可以使用其他服务空间的
`callFunction`
。
[
详情
](
https://uniapp.dcloud.io/uniCloud/cf-functions.html#call-by-function-cross-space
)
3.
**注:**
uni-app 的 vue2 模式不支持在 nvue 页面中使用 ts,请引入用插件根目录
`utils/check-update-nvue.js`
文件
7.
升级弹框可自行编写,也可以使用
`uni.showModal`
,或使用现有的升级弹框样式,如果不满足UI需求请自行替换
`static`
目录下的资源文件。在
`utils/check-update.ts`
中都有实例。
```js
import checkUpdate from '@/uni_modules/uni-upgrade-center-app/utils/check-update'
```
7.
在需要调用的
**页面**
中(一般在首页加载完成后调用或设置页面检查更新按钮调用)执行
`checkUpdate`
方法,比如在
`onReady`
生命周期中(
**注:**
因为是组件所以一定要保证组件加载完毕),以下为完整使用示例:
```js
import checkUpdate from '@/uni_modules/uni-upgrade-center-app/utils/check-update'
// ...
export default {
// ...
onReady() {
checkUpdate()
}
// ...
}
```
8.
升级弹框可自行编写,也可以使用
`uni.showModal`
,或使用现有的升级弹框样式,如果不满足UI需求请自行替换
`static`
目录下的资源文件。在
`utils/check-update.ts`
中都有实例。
**注意**
使用wgt更新,打包前请务必将 manifest.json 中的版本名称修改为更高版本。(请使用类似 1.0.0 以
`.`
分隔的多段式格式)
...
...
@@ -272,16 +290,18 @@ App升级中心 uni-upgrade-center,提供了 App 的版本更新服务。包
-
插件版本
`>= 0.6.0`
,依赖
`uni-admin 1.9.3+`
的
`uni-upgrade-center 云函数`
,插件不再单独提供云函数,可以跳过此步骤
-
插件版本
`<= 0.6.0`
,找到
`/uni_modules/uni-upgrade-center-app/uniCloud/cloudfunctions/check-version`
,右键上传部署
5.
升级中心在 uni-app x 端是
`easycom 组件`
可直接使用,无需在页面导入注册。在需要显示升级弹窗的页面直接使用组件即可(升级中心弹出时会调用 api 隐藏 tabbar,在关闭时会调用调用 api 显示 tabbar)
> 注意组件的 `ref` 属性
5.
如果是uni-app,需在
`pages.json`
中添加页面路径。
**注:请不要设置为pages.json中第一项**
```html
<!-- 该组件的 @close 方法,会在关闭弹窗的时候调用 -->
<uni-upgrade-center-app ref="upgradePopup" @close="upgradePopupClose" />
```json
"pages": [
// ……其他页面配置
{
"path" : "uni_modules/uni-upgrade-center-app/pages/uni-app-x/upgrade-popup"
}
]
```
6.
在
`script`
标签内顶部引入
`check
Version
`
方法
6.
在
`script`
标签内顶部引入
`check
Update
`
方法
```js
import checkUpdate from '@/uni_modules/uni-upgrade-center-app/utils/check-update'
...
...
@@ -289,33 +309,23 @@ App升级中心 uni-upgrade-center,提供了 App 的版本更新服务。包
7.
在需要调用的
**页面**
中(一般在首页加载完成后调用或设置页面检查更新按钮调用)执行
`checkUpdate`
方法,比如在
`onReady`
生命周期中(
**注:**
因为是组件所以一定要保证组件加载完毕),以下为完整使用示例:
```html
<template>
<view>
<!-- 页面其他内容 -->
<uni-upgrade-center-app ref="upgradePopup" @close="upgradePopupClose" />
</view>
</template>
<script>
```js
import checkUpdate from '@/uni_modules/uni-upgrade-center-app/utils/check-update'
// ...
export default {
// ...
onReady() {
// 此处的 UniUpgradeCenterAppComponentPublicInstance 类型是 easycom 组件使用约定,详见:https://doc.dcloud.net.cn/uni-app-x/component/#method-easycom
// 此处的 'upgradePopup' 要和组件的 ref 属性一致
checkUpdate(this.$refs['upgradePopup'] as UniUpgradeCenterAppComponentPublicInstance)
checkUpdate()
}
// ...
}
</script>
```
8.
当你打开调用升级中心组件的页面就会检查更新,如有更新就出弹窗。也可以在其他页面或者组件中使用
**注意**
在 uni-app x 的 app-Android 端没有 wgt 更新,也不会检测到 wgt 包的更新
**更新下载安装`check-update.ts`**
#### 更新下载安装`check-update.ts`
> 该函数在utils目录下
...
...
@@ -323,9 +333,7 @@ App升级中心 uni-upgrade-center,提供了 App 的版本更新服务。包
2.
如果是 iOS,则会直接打开AppStore的链接
3.
其他情况:
-
`uni-app`
:会将检查更新云函数返回的结果保存在localStorage中,并跳转进入
`upgrade-popup.vue`
打开更新弹框
-
`uni-app x`
:会将检查更新云函数返回的结果传递给
`\uni_modules\uni-upgrade-center-app\components\uni-upgrade-center-app\uni-upgrade-center-app.uvue`
组件的
`show`
方法,修改组件的显示状态,显示更新弹框
3.
会将检查更新云函数返回的结果保存在localStorage中,并跳转进入
`upgrade-popup.vue`
打开更新弹框
**Tips**
...
...
@@ -333,6 +341,14 @@ App升级中心 uni-upgrade-center,提供了 App 的版本更新服务。包
-
使用多段式版本格式(如:"3.0.0.0.0.1.0.1", "3.0.0.0.0.1")。如果不满足对比规则,请自行修改。
-
如果修改,请将
*pages/upgrade-popup.vue*
中
*compare*
函数一并修改
### 版本说明
> 此处版本与 [gitee](https://gitee.com/dcloud/uni-upgrade-center) 的 tag 和 uni-upgrade-center-app 的版本相对应
-
从 uni-upgrade-center
`v0.7.0`
版本起,开始支持uni-app x。
-
`v0.8.5`
之后的版本(如 0.9.0)将不再支持 HBuilderX 4.31 之前的版本,如需使用请升级 HBuilderX 至 4.31 以上版本。
-
`v0.9.0`
版本起在 uni-app x 上使用
[
dialogPage
](
https://doc.dcloud.net.cn/uni-app-x/api/dialog-page.html
)
实现,效果更好
### 费用评测@upgrade-center-fee
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录