Skip to content

Commit bee73cc

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 ebe0899 commit bee73cc

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
@@ -134,6 +134,13 @@ const writeFirebaseService: ConfigPlugin<IntercomPluginProps> = (_config) =>
134134
/**
135135
* Adds the FirebaseMessagingService entry to the AndroidManifest.xml
136136
* so Android knows to route FCM events to our service.
137+
*
138+
* If another FirebaseMessagingService is already registered (from another
139+
* SDK or manual setup), skips registration and warns. Note: due to Expo's
140+
* LIFO mod execution order, this detection only works when the conflicting
141+
* plugin is listed AFTER @intercom/intercom-react-native in the plugins
142+
* array. If your app has another FCM-handling SDK, list Intercom first
143+
* in the plugins array to ensure conflict detection works correctly.
137144
*/
138145
const registerServiceInManifest: ConfigPlugin<IntercomPluginProps> = (
139146
_config

0 commit comments

Comments
 (0)