[ReactNative] 1. consentmanager SDK Integration
CMP SDK is a React Native library that facilitates the management of user consent for data processing and storage. It is designed to help developers comply with various data protection regulations.
Installation
npm install cmp-sdk
Getting Started
Linking (React Native 0.59 and below)
If you are using React Native 0.59 or below, you need to link the native modules manually:
react-native link cmp-sdk
Usage
Import the Consentmanager
from the cmp-sdk
package in your code:
import { Consentmanager } from 'cmp-sdk';
Initializing the SDK
You can initialize the CMP SDK using either the direct configuration or a config object:
Direct Initialization:
Consentmanager.createInstance('Code-ID from consentmanager, e.g. bfa712361a....',
'Server-Domain from consentmanager, e.g. delivery.consentmanager.net',
'App Name, e.g. MyReactApp',
'Language, e.g. FR');
Initialization using Config Object:
Consentmanager.createInstanceByConfig(yourConfigObject);
Managing Consent Layer
To manage the consent layer:
Open Consent Layer:
Consentmanager.openConsentlayer();
Event Handling
Add event listeners to handle various consent-related events:
const removeListeners = Consentmanager.addEventListeners({
onOpen: () => console.log('Consent layer opened'),
onClose: () => console.log('Consent layer closed'),
// Add other event handlers as needed
});
Remember to remove the event listeners when they are no longer needed:
removeListeners();
Consent Queries
You can check for vendor and purpose consents:
Check Vendor Consent:
Consentmanager.hasVendor('vendorID').then((hasConsent) => {
console.log('Has vendor consent: ', hasConsent);
});
Check Purpose Consent:
Consentmanager.hasPurpose('purposeID').then((hasConsent) => {
console.log('Has purpose consent: ', hasConsent);
});
Resetting Consent
Consentmanager.reset();
Exporting Consent String
Consentmanager.exportCmpString().then((cmpString) => {
console.log('CMP String: ', cmpString);
});
Additional Methods
The CMP SDK provides various methods to retrieve or manage consent data, such as:
getAllVendors()
getAllPurposes()
getEnabledVendors()
getEnabledPurposes()
getDisabledVendors()
getDisabledPurposes()
getUSPrivacyString()
getGoogleACString()
Refer to the SDK documentation for detailed information on these methods.
Roadmap for future functionalities
- disableVendorList, enableVendorList
- disablePurposeList, enablePurposeList
- Cmp ATT Manager for iOS
- Custom layouts