Dynamic 已关联 Google 但钱包备份失败:检查 Drive 权限与份额条件
链小知 · 进阶 · 核验 · 依官方文档整理
针对现有备份报错,核对两项 OAuth scope、应用配置和成功记录,区分普通云备份与离线恢复。
开始前准备
- 准备使用 Dynamic 的具体应用、当前公开钱包地址、账户页备份状态、错误原文和检查时间;不上传 key share、密码或 OAuth token。
- 适用当前 JavaScript Google Drive backup 正文;应用若采用 Swift/Kotlin、旧 React SDK 或自定义恢复流程,先向支持确认对应方案。
- 检查已有记录即可,不清空本地份额、不删除云文件,也不为了验收备份充值或签一笔交易。
1. 固定账户与备份目标
从当前应用提供的账户或备份页面记录选中的钱包地址与链;多个内嵌钱包不能只按主账户美元总值定位。核对这是用户 embedded 钱包,还是开发方管理的 agent/server 钱包。
找到应用已提供的 Backup to Google Drive 入口及现有状态。入口缺失可能来自环境未启用,不能按 Dynamic 品牌推断所有账户自动备份。
检查结果:地址、链、账户模式与实际入口可对应。
2. 检查关联 Google 与 Drive 授权是否分离
查看先前 Google 同意页或应用错误,所需权限是 drive.appdata 与 drive.file。官方说明两项勾选默认关闭,只点 Continue 可能关联了 Google 但上传失败。
如本人决定重新授予备份权限,先核对 Google 账号与请求应用,明确两项用途后在官方授权页处理;普通 Google 登录不等于 Drive 权限。排查只保存权限名称和错误,不保存 token。
检查结果:关联成功和备份上传权限分别记录,缺一项不判合格。
3. 按原错误定位应用配置
若原错误含 Google Drive API has not been used 或 disabled,提供原文给应用支持,由其核对 Google Cloud 项目 API 与 Dynamic 环境;用户重试登录不能修复服务端未启用配置。
若提示权限不足,要求应用核对 readiness 或提供官方重新授权路径。未知错误则保存版本、时间和公开地址,不把所有失败都归为用户没勾选。
检查结果:错误对应权限、应用配置或仍未知的分支。
4. 确认成功上传与密码条件
核对应用最终备份成功状态、目标地址与时间;单纯 Google 账号已关联不够。文档提供 wallet.keyShares.backedUpToExternal 成功事件,应用支持可据其排查上传是否完成。
核对本人是否设置了份额加密密码及如何保管;记录有/无/未知,不展示密码。云文件存在、OAuth 完成或 SDK 成功提示都不能单独证明未来恢复可行。
检查结果:上传结果与密码条件分开,没有把登录回执当恢复验收。
5. 确定普通备份、委托还是离线恢复
普通云备份、启用 Delegated Access 后的份额分配、Offline Recovery 是不同路径。委托开启时 Drive 份额可能与本地相同,复制两份文件并不产生两个独立恢复份额;委托也是允许应用执行批准操作的权限。
专门离线恢复需要事先产生另一对份额:Google Drive 中的一份与开发方 webhook 保存的一份,还需取得并解密。没有开发方份额或具体恢复方案时标为条件缺失,不能承诺 Dynamic 停机也一定可找回。
检查结果:记录当前恢复模式与必需材料,离线可恢复性仍需实际验收。
怎样确认完成
- 保留目标地址、授权 scope、原错误和最终上传状态。
- 已分清当前份额模型、密码条件及开发方依赖,没有服务停机恢复保证。
- 本文按官方文档整理;未实际授予 OAuth、创建备份、委托或恢复钱包。
常见错误与边界
- Google 登录、Drive 授权、文件上传和恢复成功是四种结果。
- 两个副本可能是同一份额,不能只数文件判断阈值。
- Gasless、委托和网络支持按链/SDK有区别,备份成功不扩大这些能力。