Introduction
Developer‑focused documentation for integrating OneKey hardware in Web and Native apps. Start with Quick Start (Web), then pick your transport guide, wire events, and call chain APIs.
Quick Start
For Web developers getting started quickly: a compact path from init to first call, with copy‑pastable code snippets. See Getting Started.
Choose Your Transport
| Platform (Stack) | Transport | SDK Package | Guide |
|---|---|---|---|
| Web (Browser) | WebUSB | @onekeyfe/hd-common-connect-sdk | WebUSB Connection Guide |
| React Native | BLE | @onekeyfe/hd-ble-sdk | React Native BLE |
| Android (Native) | BLE | @onekeyfe/hd-common-connect-sdk | Android BLE |
| iOS (Native) | BLE | @onekeyfe/hd-common-connect-sdk | iOS BLE |
| Flutter | BLE | @onekeyfe/hd-common-connect-sdk | Flutter BLE |
- Try in Playground: hardware-example.onekey.so — Try WebUSB connection, call sample APIs, and test with the built‑in emulator device.
- Live hardware wallet simulation
- Real-time API testing
- Multi-chain protocol support
- No hardware device required for testing (you can use the emulator device)
API References
- Per‑chain APIs: Hardware SDK Core API Guide
- Events and UI responses: Config Event
- How to unlock the device: PIN Code
- Need support for passphrases? What is Passphrase
Device and transport compatibility
Support status for Bluetooth, USB, and Air-Gap connections
| Device | Bluetooth | USB | Air-Gap |
|---|---|---|---|
OneKey Classic 1s OneKey Classic 1s | Supported | Supported | N/A |
OneKey Classic 1s Pure Battery-free edition | Supported | Supported | N/A |
OneKey Mini Compact USB-only wallet | N/A | Supported | N/A |
OneKey Touch Full touchscreen experience | Supported | Supported | N/A |
OneKey Pro Premium with fingerprint security | Supported | Supported | Supported |
Air-Gap Mode: OneKey Pro supports air-gapped signing via QR codes — no USB or Bluetooth connection required, providing the highest level of security. See Air-Gap Integration for details.
Core packages
| Package | Purpose | NPM | Version |
|---|---|---|---|
@onekeyfe/hd-common-connect-sdk | Unified SDK surface for Web/Native; recommended entry for transports | npm | |
@onekeyfe/hd-ble-sdk | Pure React Native BLE stack (recommended for RN projects) | npm | |
@onekeyfe/hd-transport-react-native | React Native transport side‑effects/bridge | npm | |
@onekeyfe/hd-transport-web-device | Web transport for device access in web contexts | npm | |
@onekeyfe/hd-transport-emulator | Emulator transport (develop and test without a physical device) | npm | |
@onekeyfe/hd-transport-http | HTTP bridge transport | npm | |
@onekeyfe/hd-transport-lowlevel | Low‑level host adapter contract (for native integrations) | npm | |
@onekeyfe/hd-core | Core events, constants, message wiring | npm | |
@onekeyfe/hd-shared | Shared utilities and types | npm | |
@onekeyfe/hd-web-sdk | Web SDK wrapper (not recommended; prefer hd-common-connect-sdk) | npm |
- Changelog: releases
Concepts and advanced topics
- Message protocol (for debugging low-level transports): Low-level transport plugin
Support
For users: This documentation is primarily for developers. If you encounter issues while using our products, please consult our Help Center or submit a support ticket.
Related Repositories
Last updated on