Skip to main content

BluetoothStateNotice

Shows nothing while Bluetooth is on. It gives the host an action for permission or settings when Bluetooth is unavailable.

<BluetoothStateNotice
bleManager={bleManager}
requestPermission={requestNearbyPermission}
onOpenSettings={() => Linking.openSettings()}
/>

Props​

  • bleManager?: BleManager — pass the app-owned manager when applicable.
  • requestPermission?: () => Promise<boolean>.
  • onOpenSettings?: () => Promise<void> | void.
  • title?: string.
  • copy?: Partial<Record<"on" | "unsupported" | "unauthorized" | "off", { heading?: string; body?: string; action?: string }>>.
  • settingsAction?: string — custom action label that opens settings directly.
  • testID?: string.
  • theme? and slots? — shared OvokUiProps.

For unauthorized, the component requests permission. For off, it calls onOpenSettings or Linking.openSettings. For unsupported, it reports the state without an action. The app remains responsible for native permissions, platform setup, and localized copy. If the permission request or settings action rejects, the current component swallows the error and only clears its spinner; provide an app-owned action/error surface when failures must be visible. If settingsAction is provided, that action opens settings even when the current state is unauthorized.