feat(android)!: upgrade Intercom Android SDK to 18.0.0#411
Open
feat(android)!: upgrade Intercom Android SDK to 18.0.0#411
Conversation
Upgrade the Android SDK from 17.4.7 to 18.0.0, a major release that removes the `handlePushMessage()` API — the SDK now automatically opens conversations when push notifications are tapped. Breaking changes: - Remove `handlePushMessage()` from native modules, TurboModule spec, and public JS API - Raise compileSdk/targetSdk to 36 and buildToolsVersion to 36.0.0 - Upgrade AGP to 8.9.0 and Gradle to 8.11.1 Cleanup: - Remove dead HANDLE_PUSH_MESSAGE error code constant - Remove unused Toast and ReadableArray imports from both arch modules - Migrate deprecated lintOptions to lint block in build.gradle - Update README to remove handlePushMessage docs and fix SDK versions - Remove handlePushMessage AppState listeners from all example apps Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
liutingdu
approved these changes
Apr 8, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why?
Android SDK 18.0.0 is a major release that removes the
handlePushMessage()API (the SDK now auto-opens conversations on push tap), raises compileSdk/targetSdk to 36, and migrates internal storage from SharedPreferences to DataStore. The React Native wrapper needs to be updated to align with these breaking changes.How?
Remove the
handlePushMessage()method from native modules, TurboModule spec, and public JS API. Bump build tooling (AGP 8.9.0, Gradle 8.11.1, compileSdk/targetSdk 36) to match SDK requirements. Clean up dead code left behind by the removal.Implementation Plan
Evaluation of Changes
intercom-sdk+intercom-sdk-ui)android/build.gradleandroid/build.gradleandroid/build.gradlegradle-wrapper.propertieshandlePushMessage()removed from newarch modulenewarch/IntercomModule.javahandlePushMessage()removed from oldarch moduleoldarch/IntercomModule.javahandlePushMessage()removed from TurboModule specsrc/NativeIntercomSpec.tshandlePushMessageremoved from public API + typesrc/index.tsxexamples/handlePushMessagerefs remain)The static helper methods (
handleRemotePushWithCustomStack,handleRemotePushMessage) correctly useintercomPushClient.handlePushWithCustomStack()— the replacement API that's been stable since SDK 16.2.0. All otherIntercom.client().*calls in the wrapper remain unchanged in 18.0.0.Cleanup
HANDLE_PUSH_MESSAGEerror code constantToastandReadableArrayimports from both arch moduleslintOptionstolintblock in build.gradlehandlePushMessagedocs and fix SDK version numbershandlePushMessageAppState listeners from all example appsConsiderations for release
handlePushMessagefrom the public JS API is a breaking change — warrants a major version bumpVerification
assembleDebug)handlePushMessagereferences in codebaseGenerated with Claude Code