Skip to Content
dApps

Getting Started

Connect the provider before signing and confirm the selected network. The direct injected provider and the Aptos Wallet Standard adapter have different argument types; do not interchange their examples. Replace abbreviated addresses and provide an SDK client for read-only calls.

Learn how to detect, connect, and interact with Aptos using OneKey’s provider.

OneKey exposes Petra-compatible methods and an Aptos Wallet Standard adapter. Their method signatures differ; use the interface documented for your integration.


Provider Detection

// 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 Wallet

// Connect and get account info const response = await provider.connect() console.log({ address: response.address, // Account address publicKey: response.publicKey, // Public key })

Check Connection Status

const isConnected = await provider.isConnected() console.log('Connected:', isConnected)

Get Current Account

const account = await provider.account() console.log({ address: account.address, publicKey: account.publicKey, })

Get Network Info

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, })

Disconnect

await provider.disconnect()

Event Listeners

Listen for Account Changes

provider.onAccountChange((newAccount) => { if (newAccount) { console.log('Account changed:', newAccount) } else { console.log('Wallet disconnected') } })

Listen for Network Changes

provider.onNetworkChange((network) => { console.log('Network changed:', network) })

Migration from Petra

OneKey’s Aptos provider is Petra-compatible. Update your provider detection:

// Before (Petra only) const provider = window.petra // After (OneKey with Petra fallback) const provider = window.$onekey?.aptos || window.petra

Using with Aptos Wallet Adapter

For React applications, use the official Aptos Wallet Adapter:

npm install @aptos-labs/wallet-adapter-react
import { AptosWalletAdapterProvider } from '@aptos-labs/wallet-adapter-react' function App() { return ( <AptosWalletAdapterProvider> <YourApp /> </AptosWalletAdapterProvider> ) }

Use a Wallet Standard-compatible adapter version and verify that OneKey appears in its discovered wallet list.

Last updated on