## Available SDKs and integration methods  
[**iOS SDK**  
Integrate the iOS SDK into your native mobile application.](https://help.socure.com/riskos/docs/digital-intelligence-ios-sdk#/)  
[**Android SDK**  
Integrate the Android SDK into your native mobile application.](https://help.socure.com/riskos/docs/digital-intelligence-android-sdk#/)  
[**React Native**  
Cross-platform bridge built on the iOS and Android SDKs.](https://help.socure.com/docs/digital-intelligence-react-native-wrapper)  
[**Web SDK**  
Launch Capture App flows from desktop or mobile browsers.](https://help.socure.com/docs/digital-intelligence-web-sdk)

## Device permissions  
Silent Network Authentication runs over the device's cellular connection. The SDK manages the data session internally and **does not prompt the end user** for any runtime permission — your host app declares the required permissions at build time.

The only SNA-specific permission you must add is the Android `CHANGE_NETWORK_STATE` permission. iOS requires no additional permission or `Info.plist` entry.

| Platform  | Permission                                      | Required              | Purpose                                                                                       |
|-----------|-------------------------------------------------|-----------------------|-----------------------------------------------------------------------------------------------|
| Android   | `android.permission.CHANGE_NETWORK_STATE`       | Yes (SNA-specific)    | Lets the SDK switch the device from Wi-Fi to cellular to run authentication.                |
| Android   | `android.permission.INTERNET`                   | Yes                   | Network communication. Already required by the Digital Intelligence SDK.                     |
| Android   | `android.permission.ACCESS_NETWORK_STATE`       | Yes                   | Detects network type and availability. Already required by the Digital Intelligence SDK.     |
| iOS       | None                                           | —                     | The SDK manages the cellular data session natively; no `Info.plist` entry or entitlement is needed. |
| React Native | Android `CHANGE_NETWORK_STATE` only         | Yes (Android)         | The bridge relies on the native SDKs. Add the permission to the Android manifest; iOS needs no additional permission. |

Add the Android permission to your `AndroidManifest.xml`:

```xml
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
```

> 📘  
> **Note**:  
> The Digital Intelligence Web (JavaScript) SDK supports SNA from v2.10.0 through the `performSilentNetworkAuth` method, so no browser permissions apply. Unlike the native SDKs, the Web SDK can't force requests over cellular, so prompt the user to disable Wi-Fi before starting authentication. SNA requires a device with an active SIM and cellular data; devices without a SIM or cellular connectivity can't complete authentication, though the status is still reported for RiskOS™ workflow decisioning.
