跳到主要内容

API说明

这里列出 UKey Wallet TON Connect Provider 的方法、请求类型、事件和错误码。发送交易或签名数据前,请确认会话已连接并使用正确网络。


方法集

方法说明
connect(version?, request?)连接钱包
restoreConnection()恢复之前的会话
disconnect()断开钱包连接
send(message)发送 RPC 请求
listen(callback)监听钱包事件

Send 方法

方法说明
sendTransaction发送 TON 或与合约交互
signData签署任意数据 cell
disconnect通过 RPC 断开连接

类型集

账户信息

interface AccountInfo {
address: string; // 原始地址格式 (0:<hex>)
network: string; // 网络 ID(-239 主网,-3 测试网)
publicKey: string; // hex 公钥本身不附加 0x
walletStateInit: string; // Base64 编码后的状态初始化
}

交易请求

interface TransactionRequest {
valid_until?: number; // 过期时间的 UNIX 时间戳
network?: string; // 网络标识
from?: string; // 发送方地址
messages: Message[]; // 最多可带 4 条消息
}

消息

interface Message {
address: string; // 接收者原始地址格式
amount: string; // 金额字段(nanotons)
payload?: string; // 用于合约调用的 Base64 BOC
stateInit?: string; // 部署阶段要带的 Base64 StateInit
}

签署数据请求

interface SignDataRequest {
schema_crc: number; // Schema ID
cell: string; // Base64 编码的 cell 数据
publicKey?: string; // 可选指定公钥
}

签署数据结果

interface SignDataResult {
signature: string; // Base64 格式签名
timestamp: number; // UTC UNIX 时间戳
}

设备信息

interface DeviceInfo {
platform: string; // allowed values: 'iphone' | 'android' | 'windows' | 'mac' | 'linux'
appName: string; // sample app name: 'ukey'
appVersion: string; // 钱包版本号
maxProtocolVersion: number; // 数值参考片段:2
features: string[]; // 支持能力列表
}

网络

网络网络 ID
主网-239
测试网-3

事件流

事件说明
accountChanged当前账户已切换
disconnect钱包连接已关闭

错误码

错误码说明
0未归类错误
1请求内容有误
100应用来源未知
300用户取消了本次请求
400当前方法不可用