Issue
Hi all, I just received a warning regarding the Apple ITMS-90078: Missing Push Notification Entitlement after upgraded to Expo 51. Warning message: ITMS-90078: Missing Push Notification Entitlement - Your app appears to register with the Apple Push Notification service, but the app signature's entitlements do not include the 'aps-environment' entitlement. If your app uses the Apple Push Notification service, make sure your App ID is enabled for Push Notification in the Provisioning Portal, and resubmit after signing your app with a Distribution provisioning profile that includes the 'aps-environment' entitlement. Xcode does not automatically copy the aps-environment entitlement from provisioning profiles at build time. This behavior is intentional. To use this entitlement, either enable Push Notifications in the project editor's Capabilities pane, or manually add the entitlement to your entitlements file. For more information, see https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/HandlingRemoteNotifications.html#//apple_ref/doc/uid/TP40008194-CH6-SW1.
Since Expo SDK 51, the Notifications entitlement is no longer automatically added to iOS projects during prebuild. It was automatically added before with the following configuration:
{
"expo": {
"ios": {
"entitlements": {
"aps-environment": "development"
}
}
}
}
I have checked, and our app's features do not use any Push Notification service at this time. I followed this post on Stack Overflow here https://stackoverflow.com/questions/32251123/missing-push-notification-entitlement to find the libraries using the Push Notification service and discovered that our FirebaseAuth library is implementing Notification for Phone Number auth, but we are not using that feature for now.
Screenshot_2024-07-08_at_10.webp
Notes:
This issue has not been rejected by the App Store, but I would like to find a solution to prevent it from happening. Some possible solutions are listed below:
- Do you have any way to disable that feature in react-native-firebase/auth? It seems that the App Store review tool is scanning the iOS code and detecting that implementation.
- Disable the Push Notification service in Apple Developer for our iOS app.
- Add a development profile for Notifications entitlement:
{
"expo": {
"ios": {
"entitlements": {
"aps-environment": "development"
}
}
}
}
Can you please help to resolve or provide any suggestions for this issue? I would like to ensure that the solution does not impact our users now and that there are no issues when I support the push notification service in the future.
Thank you,
Project Files
Javascript
Click To Expand
package.json:
firebase.json for react-native-firebase v6:
iOS
Click To Expand
ios/Podfile:
AppDelegate.m:
Android
Click To Expand
Have you converted to AndroidX?
android/build.gradle:
android/app/build.gradle:
android/settings.gradle:
MainApplication.java:
AndroidManifest.xml:
Environment
Click To Expand
react-native info output:
- Platform that you're experiencing the issue on:
react-native-firebase version you're using that has this issue:
Firebase module(s) you're using that has the issue:
- Are you using
TypeScript?
Issue
Hi all, I just received a warning regarding the Apple ITMS-90078: Missing Push Notification Entitlement after upgraded to Expo 51. Warning message:
ITMS-90078: Missing Push Notification Entitlement - Your app appears to register with the Apple Push Notification service, but the app signature's entitlements do not include the 'aps-environment' entitlement. If your app uses the Apple Push Notification service, make sure your App ID is enabled for Push Notification in the Provisioning Portal, and resubmit after signing your app with a Distribution provisioning profile that includes the 'aps-environment' entitlement. Xcode does not automatically copy the aps-environment entitlement from provisioning profiles at build time. This behavior is intentional. To use this entitlement, either enable Push Notifications in the project editor's Capabilities pane, or manually add the entitlement to your entitlements file. For more information, see https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/HandlingRemoteNotifications.html#//apple_ref/doc/uid/TP40008194-CH6-SW1.Since Expo SDK 51, the Notifications entitlement is no longer automatically added to iOS projects during prebuild. It was automatically added before with the following configuration:
I have checked, and our app's features do not use any Push Notification service at this time. I followed this post on Stack Overflow here https://stackoverflow.com/questions/32251123/missing-push-notification-entitlement to find the libraries using the Push Notification service and discovered that our FirebaseAuth library is implementing Notification for Phone Number auth, but we are not using that feature for now.
Screenshot_2024-07-08_at_10.webp
Notes:
This issue has not been rejected by the App Store, but I would like to find a solution to prevent it from happening. Some possible solutions are listed below:
Can you please help to resolve or provide any suggestions for this issue? I would like to ensure that the solution does not impact our users now and that there are no issues when I support the push notification service in the future.
Thank you,
Project Files
Javascript
Click To Expand
package.json:# N/Afirebase.jsonfor react-native-firebase v6:# N/AiOS
Click To Expand
ios/Podfile:# N/AAppDelegate.m:// N/AAndroid
Click To Expand
Have you converted to AndroidX?
android/gradle.settingsjetifier=truefor Android compatibility?jetifierfor react-native compatibility?android/build.gradle:// N/Aandroid/app/build.gradle:// N/Aandroid/settings.gradle:// N/AMainApplication.java:// N/AAndroidManifest.xml:<!-- N/A -->Environment
Click To Expand
react-native infooutput:react-native-firebaseversion you're using that has this issue:e.g. 5.4.3Firebasemodule(s) you're using that has the issue:e.g. Instance IDTypeScript?Y/N&VERSIONReact Native FirebaseandInvertaseon Twitter for updates on the library.