You can follow these steps to configure push notifications for Android and iOS platforms.
Android
Add the path to your Google Services JSON
In your project’s app.json file, add the path to your google-services.json file.
{
"expo": {
"android": {
"googleServicesFile": "{google-services.json_path}"
},
"plugins": [
[
"expo-insider-plugin",
{
"appGroup": "group.com.useinsider.myapp",
"partnerName": "{your_partner_name}",
"overrideUNUserNotificationCenterDelegate": true,
"enablePushViewOnForegroundStatus": true,
"insiderRichPush": true,
"insiderAdvancedPush": true,
"mode": “production”,
"developmentTeam": “976ASWK921”,
"minimumDeploymentTarget": “12.0”
}
],
]
}
}Rich and Advanced Push
Rich and advanced push features are available by default in Android.
iOS
Rich Push
To enable rich push notifications on iOS, configure the insiderRichPush property to true in app.json.
{
"expo": {
"plugins": [
[
"expo-insider-plugin",
{
...
"insiderRichPush": true
}
]
]
}
}Lastly, add the bundle identifier for this app extension to your project’s credentials configuration: <your-app-bundle-id>.InsiderNotificationService. For further details on this process, refer to Use app extensions with Expo Application Services.
Advanced Push
To enable rich push notifications on iOS, configure the insiderAdvancedPush property to true in app.json.
{
"expo": {
"plugins": [
[
"expo-insider-plugin",
{
...
"insiderAdvancedPush": true
}
]
]
}
}The following step does not apply to version 1.1.0. After this version, the plugin performs these steps automatically.
Lastly, add the bundle identifier for this app extension to your project’s credentials configuration: <your-app-bundle-id>.InsiderNotificationContent. For further details on this process, refer to Use app extensions with Expo Application Services.
If you are using Rich and/or Advanced Push feature with Expo Application Services, be sure to use the EXPO_NO_CAPABILITY_SYNC=1 flag when running eas build. There is a known issue in the command line which removes the App Groups capability from your extension’s provisioning profile.
Use app extensions with Expo Application Services
The following step does not apply to version 1.1.0. After this version, the plugin performs these steps automatically.
If you are using Expo Application Services (EAS) and have enabled insiderRichPush or insiderAdvancedPush, you will need to declare the corresponding bundle identifiers for each app extension in your project. You can approach this step in multiple ways depending on how your project is configured to manage code signing with EAS.
You can follow Expo’s app extensions instructions to use the appExtensions configuration in your file. Alternatively, you can follow Expo’s local credentials instructions to set up the multitarget setting in your credentials.json file.