状态与权限
getProviderState() 返回 isConnected、isUnlocked、accounts、network。未授权时 network 为 null;未授权或锁定时账户列表为空。连接流程可引导用户解锁。
基础 connect() 获取账户、地址、网络、余额和资产读取权限;签名、发送、切换网络仍需要用户确认。getCapabilities() 描述实现支持的方法,不代表网站已获得授权。
只申请网站需要的权限。若主要功能是发行,可在首次点击时合并申请:
切换网络
mainnet、mutinynet,需要用户批准。完成后按新网络重新检查授权、连接和加载资产,并重建协议客户端。
getWalletSession() 返回同一时点的公开地址、公钥、网络和 Arkade 配置,不包含私钥。账户变化、锁定、断连、网络变化或后台重启后丢弃旧会话。资产操作和签名可携带 expectedAddress、expectedNetwork、expectedSessionId,避免在错误上下文执行。
disconnect() 断开当前网站。组件卸载时同时取消事件订阅。