@sfmc/react-native-mobileappmessaging
v1.0.0
Published
Mobile App Messaging SDK for React Native — device registration and analytics
Downloads
139
Readme
SFMC MobileAppMessaging SDK
Salesforce Marketing Cloud MobileAppMessaging SDK for React Native — analytics and registration.
Installation
yarn add @sfmc/react-native-mobileappmessaging
# or
npm install @sfmc/react-native-mobileappmessagingiOS:
cd ios && pod installAndroid: no additional steps — Gradle autolinking discovers the module automatically.
Required SDK configuration
- Android — initialize in your
MainApplication.ktviaSFMCSdk.configure(...). See the Android SDK Integration Guide. - iOS — initialize in your
AppDelegate.swiftviaSFMCSdk.initializeSdk(...). See the iOS SDK Integration Guide.
Usage
import { MobileAppMessagingModule } from '@sfmc/react-native-mobileappmessaging';
import type { MAMApi } from '@sfmc/react-native-mobileappmessaging';
const mam: MAMApi = await MobileAppMessagingModule.requestSdk();
const deviceId = await mam.getDeviceId();
mam.enableAnalytics();
// Registration callback
mam.setRegistrationCallback();
const emitter = MobileAppMessagingModule.getEmitter();
const sub = emitter.addListener('sfmc_mam_registration', (registration) => {
console.log('MAM registration changed:', registration);
});
// Cleanup
sub.remove();
mam.unsetRegistrationCallback();API
| Method | Return | Description |
|--------|--------|-------------|
| getDeviceId() | Promise<string \| null> | Get device identifier |
| enableAnalytics() | void | Enable analytics |
| disableAnalytics() | void | Disable analytics |
| isAnalyticsEnabled() | Promise<boolean> | Check analytics state |
| setRegistrationCallback() | void | Start receiving registration change events |
| unsetRegistrationCallback() | void | Stop receiving registration change events |
Events
| Event Name | Payload | Description |
|------------|---------|-------------|
| sfmc_mam_registration | Registration dictionary | Emitted when registration state changes |
Notes
Installing this package auto-resolves the shared sfmc-core, push, and iam packages.
MAMModule is exported as an alias for MobileAppMessagingModule. Both reference the same module.
Versions
- React Native: 0.85.1 (New Architecture mandatory)
- Android: sfmcsdk 3.1.0, mobileappmessagingsdk 1.1.0
- iOS: SFMobileAppMessagingSDK 2.0.0, MarketingCloud-SFMCSdk 4.0.1
License
BSD 3-Clause. See LICENSE for details.
