Aptos DApp 没识别 MathWallet:只检查 provider 注入与身份
链小知 · 进阶 · 核验 · 依官方文档整理
检查 window.aptos 和 isMathWallet 标志,区分缺扩展、被其他钱包占用与真正的连接授权问题。
开始前准备
- 自己的本地或可信 DApp 页面、浏览器开发者工具,以及通过官方入口核对过的 MathWallet 扩展。
- 诊断只读取对象和布尔标志;不要粘贴来源不明代码、输入密钥或调用连接及签名。
1. 确认排查的是 Aptos 扩展接口
打开官方 Aptos API 页,对照 provider 对象名称。手机钱包中的链选项与浏览器注入接口不是同一验证;历史手机教程也不能证明当前页面已经有扩展 provider。
检查结果:目标是浏览器页面的 Aptos provider,当前扩展和页面环境已记录。
2. 检查对象是否存在
在自己的可信页面开发者工具检查 typeof window.aptos。undefined 表示当前页面没有这个注入对象,先核对官方扩展是否安装、启用及能在该页面运行;这不是链上余额查询。
检查结果:保存对象存在或不存在的结果;不把 undefined 解释为账户空余额。
3. 核对 MathWallet 身份标志
检查 Boolean(window.aptos && window.aptos.isMathWallet)。对象存在但该标志不为真时,不能直接认定它来自 MathWallet;同浏览器有其他 Aptos 钱包,应先核对当前注入者。
检查结果:得到 MathWallet 身份布尔值;存在其他 provider 时不将其当 MathWallet 继续调用。
4. 明确检测结果不包含授权
官方 getProvider 示例只返回符合标志的对象,或引导安装。标志为真也不能说明账户已连接、网络正确、资金归自己或交易可成功。保留应用原有的连接状态排查,不主动调用 connect 或签名函数作为检测步骤。
检查结果:报告区分对象注入、钱包身份与授权状态三个结论。
5. 按分支整理复现材料
对象缺失时记录浏览器、扩展和页面来源;身份不符时记录其他钱包及标志值;身份正确但应用仍失败时记录应用报错。只分享版本、公开地址或非敏感错误,恢复备份不要给排查者;本地钱包与云钱包恢复路径不同。
检查结果:排查材料足够定位注入或应用问题,且没有密钥、授权或广播。
怎样确认完成
- 有对象存在结果、MathWallet 标志和应用错误分支记录。
- 文档核验;未执行开发者控制台诊断、钱包连接或真实网络调用。
常见错误与边界
- window.aptos 存在不代表 MathWallet,必须再检查身份标志。
- 钱包身份检测不是地址余额、链 ID 或用户授权验证。
- API 页未给出当前客户端完整兼容版本表;历史手机教程的截图不应当作本次界面实测。