Skip to Content
dApp 接入

API 参考

OneKey Sui provider 的方法和类型参考。


方法

方法描述
hasPermissions()检查是否已连接
requestPermissions()请求连接
disconnect()断开钱包连接
getAccounts()获取已连接的账户(返回 address、publicKey)
getActiveChain()获取当前链
isConnected()检查连接状态
signAndExecuteTransactionBlock(input)签署并执行交易,需传入 account/chain
signTransactionBlock(input)仅签署交易,需传入 account/chain
signAndExecuteTransaction(input)签署并执行(新 API,使用 Transaction,需 account/chain)
signTransaction(input)签署交易(新 API,使用 Transaction,需 account/chain)
signMessage(input)签署消息(旧版,需 account)
signPersonalMessage(input)签署个人消息(需 account,chain 可选)
onAccountChange(callback)监听账户变更
onNetworkChange(callback)监听网络变更

类型

钱包账户

getAccounts() 返回 AccountInfo[]。签名参数需要 Wallet Standard 的 WalletAccount,其 publicKey 为字节数组,并包含 chains 和 features。请通过 standard:connect 获取,不能将 AccountInfo 强制转换为 WalletAccount。

import type { WalletAccount, IdentifierString } from '@mysten/wallet-standard' import type { Transaction } from '@mysten/sui/transactions' // provider.getAccounts() interface AccountInfo { address: string publicKey: string // Hex-encoded public key }

签署并执行交易块输入

当前注入式 provider 不会转发 signAndExecuteTransactionBlock 中的 options。如需 effects、events 或 object changes,请使用同一链上的 Sui 客户端,根据返回的 digest 查询交易。

interface SignAndExecuteTransactionBlockInput { account: WalletAccount chain: IdentifierString transactionBlock: Transaction options?: { showEffects?: boolean showEvents?: boolean showObjectChanges?: boolean showBalanceChanges?: boolean showInput?: boolean showRawInput?: boolean } }

签署交易块输出

interface SignTransactionBlockOutput { transactionBlockBytes: string signature: string }

签署个人消息输入

interface SignPersonalMessageInput { account: WalletAccount chain?: IdentifierString message: Uint8Array }

签署个人消息输出

interface SignPersonalMessageOutput { signature: string bytes: string }

支持的链

网络标识
主网sui:mainnet
测试网sui:testnet
开发网sui:devnet

事件

事件回调参数描述
accountChanged{ address, publicKey } | null账户已变更
networkChangenetwork: string | null网络已变更
connectaddress: string已连接
disconnect-已断开连接

错误码

错误码描述
4001用户拒绝请求
4100未授权
-32603内部错误
最后更新于