This is an Expo project demonstrating the integration of @intercom/intercom-react-native with React Native's New Architecture (TurboModules/Fabric).
-
Install Expo CLI:
npm install -g @expo/cli
-
Set up your React Native development environment as described in:
- Install dependencies:
pnpm install
-
Update
app.jsonwith your Intercom credentials:{ "plugins": [ [ "@intercom/intercom-react-native", { "appId": "YOUR_APP_ID", "androidApiKey": "android_sdk-YOUR_ANDROID_API_KEY", "iosApiKey": "ios_sdk-YOUR_IOS_API_KEY" } ] ] } -
Update the bundle identifier and package name:
- iOS: Change
ios.bundleIdentifierinapp.json - Android: Change
android.packageinapp.json
- iOS: Change
-
(Optional) For push notifications:
- iOS: Update
ios.entitlements.aps-environmenttodevelopmentorproduction - Android: Uncomment and configure
android.googleServicesFileif using Google Services
- iOS: Update
-
Create a development build:
# For iOS npx expo run:ios # For Android npx expo run:android
-
Start the development server:
pnpm start
Note: Push notifications and some native features may not work in Expo Go.
pnpm startThen scan the QR code with Expo Go app on your device.
This example app demonstrates all major Intercom features:
- User Management: Login, logout, update user attributes
- Messaging: Open messenger, conversations, help center
- Content Display: Articles, carousels, surveys
- Push Notifications: Setup and handling
- Architecture Detection: Shows whether New Architecture is enabled
- Modern UI: Built with NativeWind/TailwindCSS
This example supports both:
- New Architecture (TurboModules/Fabric) - React Native 0.79+
- Legacy Architecture (Bridge) - React Native 0.68+
The app automatically detects and displays which architecture is active.
-
Build errors: Try clearing cache and rebuilding:
npx expo run:ios --clear npx expo run:android --clear
-
Pod install issues (iOS):
cd ios && pod install --repo-update
-
Metro bundler issues:
npx expo start --clear
-
IntercomEventEmitter null errors: Ensure you're using a development build, not Expo Go, as native modules require compilation.