Fatal Exception on showing Intercom in 14.0.3 (AndroidX Compose UI Framework) | Community
Skip to main content
Answered

Fatal Exception on showing Intercom in 14.0.3 (AndroidX Compose UI Framework)

  • December 14, 2022
  • 1 reply
  • 337 views

We are trying to upgrade from Intercom 8.x to Intercom 14.0.3 and getting the following error on calling Intercom.client().present(IntercomSpace.Home);

2022-12-11 17:54:11.415 13331-13331/com.x.y E/AndroidRuntime: FATAL EXCEPTION: main Process: com.x.y, PID: 13331 java.lang.IncompatibleClassChangeError: Found interface androidx.compose.ui.graphics.drawscope.DrawScope, but class was expected (declaration of 'androidx.compose.ui.graphics.drawscope.DrawScope' appears in /data/app/~~055VLuai5T4CYOE8PxFBWA==/com.x.y-HBBsMBMGuNiKkrQsODOALw==/base.apk) at androidx.compose.ui.graphics.drawscope.DrawScope.drawRect-n-J9OG0$default(DrawScope.kt:410) at io.intercom.android.sdk.m5.IntercomStickyBottomSheetKt$Scrim$1$1.invoke(IntercomStickyBottomSheet.kt:132) at io.intercom.android.sdk.m5.IntercomStickyBottomSheetKt$Scrim$1$1.invoke(IntercomStickyBottomSheet.kt:131) at androidx.compose.ui.draw.DrawBackgroundModifier.draw(DrawModifier.kt:104) at androidx.compose.ui.node.BackwardsCompatNode.draw(BackwardsCompatNode.kt:381) at androidx.compose.ui.node.LayoutNodeDrawScope.draw-x_KDEd0$ui_release(LayoutNodeDrawScope.kt:92) at androidx.compose.ui.node.NodeCoordinator.drawContainedDrawModifiers(NodeCoordinator.kt:371) at androidx.compose.ui.node.NodeCoordinator.draw(NodeCoordinator.kt:360) at androidx.compose.ui.node.LayoutModifierNodeCoordinator.performDraw(LayoutModifierNodeCoordinator.kt:236) at androidx.compose.ui.node.NodeCoordinator.drawContainedDrawModifiers(NodeCoordinator.kt:368) at androidx.compose.ui.node.NodeCoordinator.draw(NodeCoordinator.kt:360) at androidx.compose.ui.node.LayoutNode.draw$ui_release(LayoutNode.kt:840) at androidx.compose.ui.node.InnerNodeCoordinator.performDraw(InnerNodeCoordinator.kt:151) at androidx.compose.ui.node.NodeCoordinator.drawContainedDrawModifiers(NodeCoordinator.kt:368) at androidx.compose.ui.node.NodeCoordinator.draw(NodeCoordinator.kt:360) at androidx.compose.ui.node.LayoutModifierNodeCoordinator.performDraw(LayoutModifierNodeCoordinator.kt:236) at androidx.compose.ui.node.NodeCoordinator.drawContainedDrawModifiers(NodeCoordinator.kt:368) at androidx.compose.ui.node.NodeCoordinator.draw(NodeCoordinator.kt:360) at androidx.compose.ui.node.LayoutNode.draw$ui_release(LayoutNode.kt:840) at androidx.compose.ui.node.InnerNodeCoordinator.performDraw(InnerNodeCoordinator.kt:151) at androidx.compose.ui.node.NodeCoordinator.drawContainedDrawModifiers(NodeCoordinator.kt:368) at androidx.compose.ui.node.NodeCoordinator.draw(NodeCoordinator.kt:360) at androidx.compose.ui.node.LayoutModifierNodeCoordinator.performDraw(LayoutModifierNodeCoordinator.kt:236) at androidx.compose.ui.node.NodeCoordinator.drawContainedDrawModifiers(NodeCoordinator.kt:368) at androidx.compose.ui.node.NodeCoordinator.access$drawContainedDrawModifiers(NodeCoordinator.kt:58) at androidx.compose.ui.node.NodeCoordinator$invoke$1.invoke(NodeCoordinator.kt:397) at androidx.compose.ui.node.NodeCoordinator$invoke$1.invoke(NodeCoordinator.kt:396) at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2139) at androidx.compose.runtime.snapshots.SnapshotStateObserver$observeReads$1$1.invoke(SnapshotStateObserver.kt:130) at androidx.compose.runtime.snapshots.SnapshotStateObserver$observeReads$1$1.invoke(SnapshotStateObserver.kt:126) at androidx.compose.runtime.SnapshotStateKt__DerivedStateKt.observeDerivedStateRecalculations(DerivedState.kt:341) at androidx.compose.runtime.SnapshotStateKt.observeDerivedStateRecalculations(Unknown Source:1) at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:126) at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:120) at androidx.compose.ui.node.NodeCoordinator.invoke(NodeCoordinator.kt:396) at androidx.compose.ui.node.NodeCoordinator.invoke(NodeCoordinator.kt:58) at androidx.compose.ui.platform.RenderNodeApi29.record(RenderNodeApi29.android.kt:180) at androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList(RenderNodeLayer.android.kt:298) at androidx.compose.ui.platform.RenderNodeLayer.drawLayer(RenderNodeLayer.android.kt:239) 2022-12-11 17:54:11.416 13331-13331/com.x.y E/AndroidRuntime: at androidx.compose.ui.node.NodeCoordinator.draw(NodeCoordinator.kt:355) at androidx.compose.ui.node.LayoutNode.draw$ui_release(LayoutNode.kt:840) at androidx.compose.ui.node.InnerNodeCoordinator.performDraw(InnerNodeCoordinator.kt:151) at androidx.compose.ui.node.NodeCoordinator.drawContainedDrawModifiers(NodeCoordinator.kt:368) at androidx.compose.ui.node.NodeCoordinator.draw(NodeCoordinator.kt:360) at androidx.compose.ui.node.LayoutNode.draw$ui_release(LayoutNode.kt:840) at androidx.compose.ui.platform.AndroidComposeView.dispatchDraw(AndroidComposeView.android.kt:1005) at android.view.View.draw(View.java:22707) at android.view.View.updateDisplayListIfDirty(View.java:21579) at android.view.View.draw(View.java:22435) at android.view.ViewGroup.drawChild(ViewGroup.java:4528) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4289) at android.view.View.draw(View.java:22707) at android.view.View.updateDisplayListIfDirty(View.java:21579) at android.view.View.draw(View.java:22435) at android.view.ViewGroup.drawChild(ViewGroup.java:4528) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4289) at android.view.View.draw(View.java:22707) at android.view.View.updateDisplayListIfDirty(View.java:21579) at android.view.View.draw(View.java:22435) at android.view.ViewGroup.drawChild(ViewGroup.java:4528) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4289) at android.view.View.draw(View.java:22707) at android.view.View.updateDisplayListIfDirty(View.java:21579) at android.view.View.draw(View.java:22435) at android.view.ViewGroup.drawChild(ViewGroup.java:4528) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4289) at android.view.View.draw(View.java:22707) at com.android.internal.policy.DecorView.draw(DecorView.java:820) at android.view.View.updateDisplayListIfDirty(View.java:21579) at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:534) at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:540) at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:616) at android.view.ViewRootImpl.draw(ViewRootImpl.java:4525) at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:4245) at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3374) at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2179) at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:8787) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1037) at android.view.Choreographer.doCallbacks(Choreographer.java:845) at android.view.Choreographer.doFrame(Choreographer.java:780) at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1022) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loopOnce(Looper.java:201) at android.os.Looper.loop(Looper.java:288) at android.app.ActivityThread.main(ActivityThread.java:7842) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)

We are on JDK 11 and Kotlin 17.1.0.

 

We have matched the app gradle of the sample application on GitHub except for JDK 8 (we are on 11).

 

We are also forcing androidx.compose 1.3.1 via the resolutionStrategy block i.e.

configurations.all { resolutionStrategy.eachDependency { details -> def requested = details.requested if (requested.module.toString() == 'androidx.compose.ui:ui') { details.useVersion '1.3.1' } } }

We have also tried all the clean, rebuild, delete build folder, etc options.

 

Any ideas for a resolution on this issue?

 

Thanks,

Ross

Best answer by Daniel M15

Hey @ross b12​! Daniel from Customer Support Engineering here 🔧 

 

Can you please try updating to V14.0.4 and letting me know if it helps? If not, could you contact us about this via the Messenger, sharing your device and OS version, noting any plugins or third party apps used in your app? We may need to troubleshoot this further and request sensitive info that is not suitable to share in a public forum. Thanks!

1 reply

Daniel M15
Employee
  • Employee
  • Answer
  • December 21, 2022

Hey @ross b12​! Daniel from Customer Support Engineering here 🔧 

 

Can you please try updating to V14.0.4 and letting me know if it helps? If not, could you contact us about this via the Messenger, sharing your device and OS version, noting any plugins or third party apps used in your app? We may need to troubleshoot this further and request sensitive info that is not suitable to share in a public forum. Thanks!