> For the complete documentation index, see [llms.txt](https://cmp.docs.sirdata.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cmp.docs.sirdata.net/en/mobile-apps-native-sdk/mobile-sdk.md).

# Android, iOS & React Native SDK

Sirdata CMP is a Consent Management Platform SDK for **Android**, **iOS** and **React Native**, registered with the IAB as **CMP ID 92**. It collects consent in a fully native interface — no WebView — and exposes every signal through the standard IAB in-app storage keys, so the IAB-compliant ad and analytics SDKs in your app read consent on their own, and built-in adapters forward it to several that do not.

|                 | Android              | iOS                              | React Native                                                                        |
| --------------- | -------------------- | -------------------------------- | ----------------------------------------------------------------------------------- |
| Minimum version | API 23 (Android 6.0) | iOS 15.0                         | The Android and iOS minimums; 2.0.1 verified with React Native 0.86.3 (Expo SDK 57) |
| Consent UI      | Jetpack Compose      | SwiftUI                          | The native UI of each platform                                                      |
| Signal storage  | `SharedPreferences`  | `NSUserDefaults`                 | The native storage of each platform                                                 |
| Distribution    | Maven Central        | Swift Package Manager, CocoaPods | npm (`@sirdata/react-native-cmp`)                                                   |

## What it covers

* **IAB TCF v2.2** — in-app CMP API (`ping`, `getInAppTCData`, `addEventListener`)
* **IAB GPP** — Global Privacy Platform, including the section command API
* **US regime** — a US opt-out screen, the US Privacy string and the GPP US sections
* **Google Additional Consent** and **Google Consent Mode**, derived from TCF purposes
* **The web CMP's display cascade** — capping windows, partial consent and cookie wall are decided by the SDK, not by your app

## Before you start

You need a **partner ID** and a **config ID** from the [Sirdata Console](https://cmp.sirdata.io). They select the publisher configuration the SDK downloads at initialization: theme, texts, purposes, vendors, scope and capping. Changing the configuration takes effect without an app release.

## Where to go next

* [**Android setup**](/en/mobile-apps-native-sdk/mobile-sdk/setup.md), [**iOS setup**](/en/mobile-apps-native-sdk/mobile-sdk/setup-1.md) or [**React Native setup**](/en/mobile-apps-native-sdk/mobile-sdk/react-native-setup.md) — install and initialize
* [**Sharing consent with vendor SDKs**](/en/mobile-apps-native-sdk/mobile-sdk/sharing-consent.md) — how ad SDKs read the consent you collect
* [**Troubleshooting**](/en/mobile-apps-native-sdk/mobile-sdk/troubleshooting.md) — the errors integrators actually hit

## Sample apps

A full sample app for Android and for iOS is available on request from your Sirdata contact; there is no React Native sample. Both initialize the SDK, present the banner, expose Accept All / Reject All / Open Preferences, and display the live consent state (TC String, purposes, vendors) along with an IAB TCF `ping` test. Both also let you change the partner / config pair at runtime without rebuilding.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://cmp.docs.sirdata.net/en/mobile-apps-native-sdk/mobile-sdk.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
