Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
uni-starter
提交
43e66bab
U
uni-starter
项目概览
DCloud
/
uni-starter
通知
4684
Star
229
Fork
210
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
3
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
uni-starter
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
3
Issue
3
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
43e66bab
编写于
4月 23, 2021
作者:
DCloud_JSON
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
123
上级
f3793a09
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
94 addition
and
82 deletion
+94
-82
pages/ucenter/ucenter.vue
pages/ucenter/ucenter.vue
+11
-4
uni_modules/uni-upgrade-center-app/changelog.md
uni_modules/uni-upgrade-center-app/changelog.md
+2
-0
uni_modules/uni-upgrade-center-app/package.json
uni_modules/uni-upgrade-center-app/package.json
+1
-1
uni_modules/uni-upgrade-center-app/pages/upgrade-popup.vue
uni_modules/uni-upgrade-center-app/pages/upgrade-popup.vue
+3
-4
uni_modules/uni-upgrade-center-app/readme.md
uni_modules/uni-upgrade-center-app/readme.md
+11
-10
uni_modules/uni-upgrade-center-app/uniCloud/cloudfunctions/check-version/index.js
...center-app/uniCloud/cloudfunctions/check-version/index.js
+1
-1
uni_modules/uni-upgrade-center-app/utils/check-update.js
uni_modules/uni-upgrade-center-app/utils/check-update.js
+65
-62
未找到文件。
pages/ucenter/ucenter.vue
浏览文件 @
43e66bab
...
...
@@ -80,12 +80,12 @@
[{
title
:
'
问题与反馈
'
,
to
:
'
/uni_modules/uni-feedback/pages/opendb-feedback/list
'
// /pages/ucenter/uni-feedback/uni-feedback uni_modules/uni-feedback/pages/opendb-feedback/list
},
{
title
:
'
关于
'
,
to
:
'
/pages/ucenter/about/about
'
},
{
title
:
'
设置
'
,
to
:
'
/pages/ucenter/settings/settings
'
},
{
title
:
'
关于
'
,
to
:
'
/pages/ucenter/about/about
'
}]
]
}
...
...
@@ -129,7 +129,14 @@
}
},
async
checkVersion
()
{
console
.
log
(
await
callCheckVersion
());
let
res
=
await
callCheckVersion
()
console
.
log
(
res
);
if
(
res
.
result
.
code
==
0
){
uni
.
showToast
({
title
:
res
.
result
.
message
,
icon
:
'
none
'
});
}
checkUpdate
()
},
toEdit
()
{
...
...
uni_modules/uni-upgrade-center-app/changelog.md
浏览文件 @
43e66bab
## 0.1.5(2021-04-22)
-
更新check-update函数。现在返回一个Promise,有更新时成功回调,其他情况错误回调
## 0.1.4(2021-04-13)
-
更新文档。明确云函数调用结果
## 0.1.3(2021-04-13)
...
...
uni_modules/uni-upgrade-center-app/package.json
浏览文件 @
43e66bab
{
"id"
:
"uni-upgrade-center-app"
,
"displayName"
:
"升级中心 uni-upgrade-center - App"
,
"version"
:
"0.1.
4
"
,
"version"
:
"0.1.
5
"
,
"description"
:
"升级中心前台检查更新"
,
"keywords"
:
[
"uniCloud"
,
...
...
uni_modules/uni-upgrade-center-app/pages/upgrade-popup.vue
浏览文件 @
43e66bab
...
...
@@ -384,11 +384,10 @@
left
:
0
;
top
:
0
;
right
:
0
;
bottom
:
0
;
background-color
:
rgba
(
0
,
0
,
0
,
.65
);
bottom
:
0
;
background-color
:
rgba
(
0
,
0
,
0
,
.65
);
}
.botton-radius
{
border-bottom-left-radius
:
30
rpx
;
border-bottom-right-radius
:
30
rpx
;
...
...
uni_modules/uni-upgrade-center-app/readme.md
浏览文件 @
43e66bab
...
...
@@ -11,6 +11,8 @@
-
好看、实用、可自定义、可拓展的前台更新弹框
## 安装指引
0.
依赖数据库
`opendb-app-versions`
,如果没有此库,请在云服务空间中创建。
1.
使用
`HBuilderX 3.1.0+`
,因为要使用到
`uni_modules`
...
...
@@ -67,9 +69,7 @@
4.
`wgtVersion`
使用 plus.runtime.getProperty(plus.runtime.appid,(wgtInfo) => { wgtInfo.version }) 获取
5.
`check-version`
云函数内部会自动获取 App 平台
6.
检查更新前端使用示例:
`uni_modules/uni-upgrade-center-app/utils/check-update.js`
,在要检查更新的地方导入调用即可
5.
`check-version`
云函数内部会自动获取 App 平台
**Tips**
...
...
@@ -107,10 +107,11 @@
-
使用上一步取出的版本包的版本号 和传参 appVersion、wgtVersion 来检测是否有更新。必须同时大于这两项,因为上一次可能是wgt热更新,否则返回暂无更新
-
如果库中 wgt包 版本大于传参 appVersion,但是不满足 min_uni_version < appVersion,则不会使用wgt更新,会接着判断库中 app包version 是否大于 appVersion
-
返回结果:
|code|message|
|:-:|:-:|
|0|当前版本已经是最新的,不需要更新|
|101|wgt更新|
|102|整包更新|
|-101|暂无更新或检查appid是否填写正确|
|-102|请检查传参是否填写正确|
\ No newline at end of file
|code|message|
|:-:|:-:|
|0|当前版本已经是最新的,不需要更新|
|101|wgt更新|
|102|整包更新|
|-101|暂无更新或检查appid是否填写正确|
|-102|请检查传参是否填写正确|
\ No newline at end of file
uni_modules/uni-upgrade-center-app/uniCloud/cloudfunctions/check-version/index.js
浏览文件 @
43e66bab
...
...
@@ -107,7 +107,7 @@ exports.main = async (event, context) => {
return
{
code
:
0
,
message
:
'
当前版本已经是最新的,不需要更新
'
message
:
'
已经是最新版本
'
};
}
...
...
uni_modules/uni-upgrade-center-app/utils/check-update.js
浏览文件 @
43e66bab
...
...
@@ -3,74 +3,77 @@ import callCheckVersion from './call-check-version'
// 推荐再App.vue中使用
const
PACKAGE_INFO_KEY
=
'
__package_info__
'
export
default
function
()
{
export
default
function
()
{
// #ifdef APP-PLUS
callCheckVersion
().
then
(
async
(
e
)
=>
{
if
(
!
e
.
result
)
return
;
const
{
code
,
message
,
is_silently
,
// 是否静默更新
url
,
// 安装包下载地址
platform
,
// 安装包平台
type
// 安装包类型
}
=
e
.
result
;
// 此处逻辑仅为实例,可自行编写
if
(
code
>
0
)
{
// 腾讯云和阿里云下载链接不同,需要处理一下,阿里云会原样返回
return
new
Promise
((
resolve
,
reject
)
=>
{
callCheckVersion
().
then
(
async
(
e
)
=>
{
if
(
!
e
.
result
)
return
;
const
{
fileList
}
=
await
uniCloud
.
getTempFileURL
({
fileList
:
[
url
]
});
e
.
result
.
url
=
fileList
[
0
].
tempFileURL
code
,
message
,
is_silently
,
// 是否静默更新
url
,
// 安装包下载地址
platform
,
// 安装包平台
type
// 安装包类型
}
=
e
.
result
;
// 静默更新,只有wgt有
if
(
is_silently
)
{
uni
.
downloadFile
({
url
:
e
.
result
.
url
,
success
:
res
=>
{
if
(
res
.
statusCode
==
200
)
{
// 下载好直接安装,下次启动生效
plus
.
runtime
.
install
(
res
.
tempFilePath
,
{
force
:
false
});
}
}
// 此处逻辑仅为实例,可自行编写
if
(
code
>
0
)
{
// 腾讯云和阿里云下载链接不同,需要处理一下,阿里云会原样返回
const
{
fileList
}
=
await
uniCloud
.
getTempFileURL
({
fileList
:
[
url
]
});
return
;
}
/**
* 提示升级一
* 使用 uni.showModal
*/
// return updateUseModal(e.result)
e
.
result
.
url
=
fileList
[
0
].
tempFileURL
resolve
(
e
)
/**
* 提示升级二
* 官方适配的升级弹窗,可自行替换资源适配UI风格
*/
uni
.
setStorageSync
(
PACKAGE_INFO_KEY
,
e
.
result
)
uni
.
navigateTo
({
url
:
`/uni_modules/uni-upgrade-center-app/pages/upgrade-popup?local_storage_key=
${
PACKAGE_INFO_KEY
}
`
,
fail
:
(
err
)
=>
{
console
.
error
(
'
更新弹框跳转失败
'
,
err
)
uni
.
removeStorageSync
(
PACKAGE_INFO_KEY
)
// 静默更新,只有wgt有
if
(
is_silently
)
{
uni
.
downloadFile
({
url
:
e
.
result
.
url
,
success
:
res
=>
{
if
(
res
.
statusCode
==
200
)
{
// 下载好直接安装,下次启动生效
plus
.
runtime
.
install
(
res
.
tempFilePath
,
{
force
:
false
});
}
}
});
return
;
}
})
}
else
if
(
code
<
0
)
{
/**
* 提示升级一
* 使用 uni.showModal
*/
// return updateUseModal(e.result)
/**
* 提示升级二
* 官方适配的升级弹窗,可自行替换资源适配UI风格
*/
uni
.
setStorageSync
(
PACKAGE_INFO_KEY
,
e
.
result
)
uni
.
navigateTo
({
url
:
`/uni_modules/uni-upgrade-center-app/pages/upgrade-popup?local_storage_key=
${
PACKAGE_INFO_KEY
}
`
,
fail
:
(
err
)
=>
{
console
.
error
(
'
更新弹框跳转失败
'
,
err
)
uni
.
removeStorageSync
(
PACKAGE_INFO_KEY
)
}
})
}
else
if
(
code
<
0
)
{
// TODO 云函数报错处理
console
.
error
(
message
)
reject
(
e
)
}
}).
catch
(
err
=>
{
// TODO 云函数报错处理
console
.
error
(
message
)
}
}).
catch
(
err
=>
{
// TODO 云函数报错处理
console
.
error
(
err
.
message
)
})
console
.
error
(
err
.
message
)
reject
(
err
)
})
});
// #endif
}
...
...
@@ -148,4 +151,4 @@ function updateUseModal(packageInfo) {
});
}
});
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录