本页目录
快速开始
签名前先连接 provider,并确认所选网络。直接注入的 provider 与 Aptos Wallet Standard 适配器使用不同的参数类型,请勿混用示例。请替换省略的地址,并为只读请求初始化 SDK 客户端。
了解如何检测、连接和与 Aptos 进行交互。
OneKey 提供 Petra 兼容方法和 Aptos Wallet Standard 适配器。两者的方法签名不同,请使用对应集成方式的接口。
Provider 检测
// Detect OneKey Aptos provider
const provider = window.$onekey?.aptos
if (!provider) {
throw new Error('OneKey Aptos provider not detected')
}
// Check provider info
console.log('Provider:', provider.isOneKey ? 'OneKey' : 'Unknown')连接钱包
// Connect and get account info
const response = await provider.connect()
console.log({
address: response.address, // Account address
publicKey: response.publicKey, // Public key
})检查连接状态
const isConnected = await provider.isConnected()
console.log('Connected:', isConnected)获取当前账户
const account = await provider.account()
console.log({
address: account.address,
publicKey: account.publicKey,
})获取网络信息
const network = await provider.network()
console.log('Network:', network) // 'mainnet', 'testnet', 'devnet'
// For full network info
const networkInfo = await provider.getNetwork()
console.log({
name: networkInfo.name,
chainId: networkInfo.chainId,
url: networkInfo.url,
})断开连接
await provider.disconnect()事件监听
监听账户变更
provider.onAccountChange((newAccount) => {
if (newAccount) {
console.log('Account changed:', newAccount)
} else {
console.log('Wallet disconnected')
}
})监听网络变更
provider.onNetworkChange((network) => {
console.log('Network changed:', network)
})从 Petra 迁移
OneKey 的 Aptos provider 与 Petra 兼容。更新您的 provider 检测方式:
// Before (Petra only)
const provider = window.petra
// After (OneKey with Petra fallback)
const provider = window.$onekey?.aptos || window.petra使用 Aptos Wallet Adapter
对于 React 应用,使用官方的 Aptos Wallet Adapter:
npm install @aptos-labs/wallet-adapter-reactimport { AptosWalletAdapterProvider } from '@aptos-labs/wallet-adapter-react'
function App() {
return (
<AptosWalletAdapterProvider>
<YourApp />
</AptosWalletAdapterProvider>
)
}使用兼容 Wallet Standard 的适配器版本,并确认自动发现的钱包列表中包含 OneKey。
最后更新于