Troubleshooting
Native module is missing
The Bluetooth and health integrations need a native development build. Install the peer package, configure its Expo plugin, run a native build, and install that build on the device. A JavaScript reload does not add a newly configured native module to an existing binary.
A component renders without client data
Confirm that it is below OvokProvider, that the app has an active login and selected patient where required, and that the expected project settings are enabled. A UI component does not grant backend access; inspect the server’s access-policy response.
Bluetooth discovery is empty
Check the device’s advertised name and service UUID, Bluetooth permission, powered-on state, and acceptedDevices declaration. On iOS, the model name can arrive through local-name advertisement data before a name is available. Test discovery on a physical device.
Health import returns no records
Confirm that the app requested permission for the exact platform identifiers in dataToSync, that the user granted access, and that matching records exist in the source platform. HealthKit identifiers and Health Connect record types are different and cannot be interchanged.
Background results arrive late or more than once
The operating system controls execution timing. Use durable queue storage and deduplicate writes by the result’s stable id. Restore the client and patient identity in headless work; the SDK does not serialize an authenticated client for background use.
Sign-in or API calls are rejected
Check the selected API environment, tenant code, active session, and project configuration. Read authentication, access policies, and settings and features. Keep the app’s error boundary and request diagnostics free of patient identifiers and credentials.