feat(web): 记住密码/自动登录与版本更新放开到网页形态
- 登录页与首页移除 isDesktopRuntime 门控,网页浏览器同样显示记住密码/自动登录与更新版本入口 - 记住密码由 base64 明文改为 XOR+位移可逆加密存储(v1. 前缀),兼容解密历史值 - 网页形态进入登录页即回填凭据并尝试自动登录(登出/切号导航仍豁免) - 版本更新在无桌面桥时降级为 OSS 直链下载安装包,桌面端维持自动安装
This commit is contained in:
@@ -109,17 +109,27 @@ export function useVersionUpdate() {
|
||||
|
||||
async function doUpdate() {
|
||||
if (updating.value || !fileUrl.value) return
|
||||
if (!window.confirm('有更新,是否现在更新?\n更新将下载安装包并重启程序。')) return
|
||||
const bridge = getPywebviewApi()
|
||||
const doUpdateApp = bridge?.do_update_app
|
||||
const desktopUpdate = Boolean(doUpdateApp)
|
||||
const tip = desktopUpdate
|
||||
? '有更新,是否现在更新?\n更新将下载安装包并重启程序。'
|
||||
: '发现新版本,是否下载最新安装包?'
|
||||
if (!window.confirm(tip)) return
|
||||
updating.value = true
|
||||
if (!desktopUpdate) {
|
||||
// 网页/无桌面桥形态:OSS 公开直链直接下载安装包(区别于桌面端自动下载安装)
|
||||
hint.value = '开始下载安装包,若浏览器未响应请再次点击...'
|
||||
window.location.href = fileUrl.value
|
||||
updating.value = false
|
||||
return
|
||||
}
|
||||
hint.value = '正在下载并准备更新,程序将自动退出...'
|
||||
try {
|
||||
const bridge = getPywebviewApi()
|
||||
const result = bridge?.do_update_app
|
||||
? await bridge.do_update_app(fileUrl.value)
|
||||
: undefined
|
||||
const result = await doUpdateApp!(fileUrl.value)
|
||||
hint.value = result?.success
|
||||
? '更新已启动,程序即将退出...'
|
||||
: (result?.error || '当前环境不支持自动更新')
|
||||
: (result?.error || '更新启动失败,请重试')
|
||||
} catch {
|
||||
hint.value = '请求更新失败,请重试'
|
||||
} finally {
|
||||
|
||||
Reference in New Issue
Block a user