Skip to content

Commit 555a3d3

Browse files
docs: document FCM conflict detection plugin-ordering limitation
The conflict detection in registerServiceInManifest only works when the competing plugin is listed after Intercom in the Expo plugins array, due to Expo's LIFO mod execution order. Added a JSDoc comment explaining this constraint and advising users to list Intercom first. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 0290e8a commit 555a3d3

1 file changed

Lines changed: 7 additions & 0 deletions

File tree

src/expo-plugins/withAndroidPushNotifications.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,13 @@ const writeFirebaseService: ConfigPlugin<IntercomPluginProps> = (_config) =>
117117
/**
118118
* Adds the FirebaseMessagingService entry to the AndroidManifest.xml
119119
* so Android knows to route FCM events to our service.
120+
*
121+
* If another FirebaseMessagingService is already registered (from another
122+
* SDK or manual setup), skips registration and warns. Note: due to Expo's
123+
* LIFO mod execution order, this detection only works when the conflicting
124+
* plugin is listed AFTER @intercom/intercom-react-native in the plugins
125+
* array. If your app has another FCM-handling SDK, list Intercom first
126+
* in the plugins array to ensure conflict detection works correctly.
120127
*/
121128
const registerServiceInManifest: ConfigPlugin<IntercomPluginProps> = (
122129
_config

0 commit comments

Comments
 (0)