This guide explains how you can integrate the Insider SDK for Expo.
Bare Workflow
Integrate the Insider SDK
If you use the bare workflow, refer to the React Native installation to integrate the react-native-insider package for Expo.
Once the react-native-insider package has been integrated into your project, proceed with the following step.
Complete native setup
Prebuilding the application generates the native files needed for the proper functioning of the Insider SDK.
expo prebuild
The application should be run as outlined in the Expo documentation. Be aware that any modifications to configuration options will necessitate prebuilding and rerunning the application.
Usage
After this step, you can complete the next steps on the React Native installation guide.
Managed workflow
Integrate the Insider SDK
If you use the managed workflow, your project should include the expo-insider-plugin package along with the react-native-insider package.
This config plugin automatically configures permissions, platform-specific settings, and any other additional setup needed to make it work seamlessly for Insider One.
expo install expo-insider-plugin
OR
npx expo install expo-insider-plugin
Configure app.json
| Key | Type | Description |
|---|---|---|
| appGroup | String | This value is used to flow data between the main target and notification targets. It should be the same value you used at the initialize time. |
| partnerName | String | This value is the name of your Inone panel defined for you. |
| overrideUNUserNotificationCenterDelegate | Boolean | This value overrides the delegate set operations for other UNUserNotificationCenterDelegates and allows notification limits to be set within the Expo plugin. (Only iOS) |
| enablePushViewOnForegroundStatus | Boolean | Before setting this value, you must set the overrideUNUserNotificationCenterDelegate value to true. This value sets the visibility of the push in the foreground state on iOS devices. (Only iOS) |
| insiderRichPush | Boolean | Before setting this value, you must have set the appGroup value. This value activates the target configurations added for rich push. (Only iOS) |
| insiderAdvancedPush | Boolean | Before setting this value, you must have set the appGroup value. This value activates the target configurations added for the advanced push. (Only iOS) |
| mode | String | This value is used to configure the APNs environment entitlement. Acceptable values are "development" or "production". |
developmentTeam | String | Before setting this value, you must have set the appGroup value. This value is used to configure the Apple Team ID. You can find your Apple Team ID by running expo credentials:manager, e.g., "976ASWK921". |
minimumDeploymentTarget | String | Before setting this value, you must have set the appGroup value. This value is used to define the IPHONEOS_DEPLOYMENT_TARGET when adding the iOS Notification Service & Notification Content. A deployment target specifies the minimum operating system version that the notification targets can run on. This value should match the value in your Podfile, e.g., "12.0". |
Below is a JSON example.
{
"expo": {
"plugins": [
[
"expo-insider-plugin",
{
"appGroup": "group.com.useinsider.myapp",
"partnerName": "{your_partner_name}",
"overrideUNUserNotificationCenterDelegate": true,
"enablePushViewOnForegroundStatus": true,
"insiderRichPush": true,
"mode": “production”,
"developmentTeam": “976ASWK921”,
"minimumDeploymentTarget": “12.0”
}
],
]
}
}