Read the Mobile SDK Integration Guide first. It covers what is the same on every platform: the backend token endpoint, the SDK lifecycle, and the production checklist. This page shows the React Native calls for each step.
Configure on Every Launch
isSessionValid(), isSyncActive(), getStoredCredentials(), getSyncStatus(), getAvailableProviders() and setProvider() are synchronous - no await needed.
Sign In
Once per user, whenisSessionValid() is false, with tokens from your backend endpoint:
updateTokens() - not signIn():
Select the Provider (Android)
getAvailableProviders() returns a single apple entry. The stored choice is available as getStoredCredentials().provider.
Request Permissions
Start Background Sync
Logging
Disconnect
Expo and Bare React Native Setup
On top of the production checklist:- Expo: add the config plugin to
app.json(see Installation). It sets the HealthKit entitlements,Info.plistusage texts, background modes and task identifiers on iOS, and the Health Connect permission-rationale activity aliases on Android. - The plugin replaces
UIBackgroundModes. If your app needs other modes (e.g.remote-notification), checkInfo.plistafternpx expo prebuildand add them back. - Expo, Android: set
minSdkVersion: 29withexpo-build-properties. - Bare React Native: install Expo modules, then add the iOS entitlements and
Info.plistkeys yourself, and the Health Connect activity aliases described in the Android integration guide.
Complete Example
Next Steps
Troubleshooting
Common issues and solutions for iOS and Android.
SDK API reference
Every method and type, with platform differences.

