Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.crossmint.com/llms.txt

Use this file to discover all available pages before exploring further.

Final Class Hardware-backed approval signer — keys live in Secure Enclave (iOS) or Android Keystore, never in Dart memory.
final class CrossmintDeviceWalletSigner implements CrossmintWalletApprovalSigner
Device signers are the SDK’s default delegated signer: low-friction, used for day-to-day transaction approvals. They are supported on EVM and Stellar wallets. Solana wallets do not support device signers. The locator must follow the device:<publicKeyBase64> format. Use CrossmintWalletsClient.createDeviceSigner to register a new device signer and get a valid locator.

Constructors

CrossmintDeviceWalletSigner

CrossmintDeviceWalletSigner({
  required this.address,
  required this.locator,
  DeviceSignerKeyStorage? storage,
})
Creates a device wallet signer bound to an existing hardware key.

Properties

address

final String address
The wallet address associated with this signer.

locator

final String locator

type

String get type

storage

DeviceSignerKeyStorage get storage
The key-storage adapter. Defaults to the platform-native Secure Enclave / Android Keystore implementation when not overridden.

publicKeyBase64

String get publicKeyBase64
The base64-encoded public key parsed from locator.

Methods

signMessage

Future<Object> signMessage(String message)

signTransaction

Future<Object> signTransaction(String transaction)

getMappedKey

Future<String?> getMappedKey()

hasLocalKey

Future<bool> hasLocalKey()

mapCurrentKeyToAddress

Future<void> mapCurrentKeyToAddress()