Updates the underlying native SDKs: iOS 19.8.1 → 19.9.0 and Android 18.9.3 → 18.10.0, and adds setUserJwtProvider / removeUserJwtProvider to the React Native API.
New: User JWT provider — register a provider with Intercom.setUserJwtProvider(async () => jwt) and Intercom asks your app for a fresh user JWT when the current one is about to expire or has expired, then retries the requests that failed with the new token. Open Messenger screens recover without being reopened. See the README for details.
📱 iOS SDK 19.9.0
Release notes: 19.8.2, 19.8.3, 19.8.4, 19.9.0
Enhancements
- Added
setUserJwtProviderso Intercom can ask your app for a fresh user JWT when the current one is about to expire or has expired, and retry affected requests with the new token. - Messenger screens now recover after an expired user JWT is replaced, without needing to reopen the Messenger.
- Added support for iOS 27.
- Added support for configuring the Messenger environment from the host app's Info.plist.
- Messenger layouts now adapt when the app window is resized.
- Updated the conversation header with a larger avatar and refined title and subtitle sizes.
- Moved the sender's name and message time below admin, bot and Fin message bubbles, to match the web and Android Messengers.
- VoiceOver now moves focus to the Home greeting when the Messenger opens.
Bug fixes
- Fixed a crash that could occur at app launch on older iOS versions when push notifications are integrated automatically.
- Fixed a crash that could occur on long conversation threads.
- Fixed a crash that could occur when opening a Help Center article in apps that add methods to every object.
- Fixed an issue where the Messenger could fail to load after a cold launch until the app was backgrounded and reopened.
- Fixed an issue where failed conversation rating submissions could appear successful.
- Fixed an issue where a new conversation refused by the workspace could show a "Try Again" option that could never succeed.
- Fixed an issue where the "Fin is thinking" indicator may not appear while Fin was working through a Procedure.
- Fixed an issue where embedded videos could stop and reload during playback while a conversation was updating.
- Fixed an issue where reactions may not appear on in-app posts, full-screen posts and notes.
- Fixed an issue where Home cards and the conversation screen could be cut off on folded iPhones.
- Fixed an issue where part of the host app could appear black behind the Messenger, or the Inbox empty state could be misaligned, after resizing the app window.
- Fixed an issue where the create ticket button's icon and title could be invisible in dark mode.
- Fixed an issue where the survey background fade could show a light band in dark mode.
- Fixed an issue where bullet list text in Large Posts opened from a conversation could appear in a hard-to-read color.
- Fixed an issue where VoiceOver could start reading partway down a Help Center article instead of at its title.
🤖 Android SDK 18.10.0
Release notes: 18.9.4, 18.9.5, 18.9.6, 18.10.0
Enhancements
- Added
setUserJwtProviderso the SDK can request a fresh user JWT when the current one expires, and retry the requests that failed because of it. - Home, Conversation, Inbox and Tickets now reload when a new user JWT is set after an expired-JWT failure.
- Consecutive messages from the same teammate are now grouped together for the whole day, matching the web Messenger.
Bug fixes
- Fixed an ANR when the FCM push token listener ran on the main thread, and main-thread blocking when the push token was read for the first time.
- Fixed a crash in the composer when the workspace's attachment settings don't include a trusted file list.
- Fixed failed CSAT ratings and remarks appearing as saved, and show when the rating window is closed.
- Fixed a message that can't start a new conversation re-sending on every tap; tapping it now offers to delete it.
- Fixed session starts being counted before the server accepted them.
- Fixed the Recent message card on Home remaining stale after returning from a conversation.
- Fixed saving an image from the attachment preview using excess memory and changing the file's format and resolution.
- Fixed the create-ticket icon and title being invisible in dark mode.
- Fixed Messenger text becoming hard to read on devices that apply the system's "dark mode for apps" to a Messenger set to light mode.
Dependency updates
- Paging updated to 3.5.1.
⚠️ Android compatibility notice
The next major Android SDK will be built with Kotlin 2.3 and will require apps to use Kotlin 2.0 or later due to binary compatibility.