Skip to content

IllegalArgumentException within DropInBottomSheetDialogFragment #2238

@JakeSteam

Description

@JakeSteam

Description

Unknown cause, 1 user on Android 14 experienced this crash (once) at some point during checkout. Only received 1 instance of this crash via Crashlytics, reporting in case it becomes more prevalent.

Steps to Reproduce

  1. I am able to consistently reproduce this issue: No

Logs and Crash Reports

Crashlytics stack trace
   Fatal Exception: java.lang.IllegalArgumentException: Required value was null.
          at com.adyen.checkout.dropin.internal.ui.DropInBottomSheetDialogFragment.getProtocol(DropInBottomSheetDialogFragment.kt:35)
          at com.adyen.checkout.dropin.internal.ui.PaymentMethodListDialogFragment.onStoredPaymentMethodSelected(PaymentMethodListDialogFragment.kt:188)
          at com.adyen.checkout.dropin.internal.ui.PaymentMethodAdapter$StoredPaymentMethodVH.bind$lambda$4$lambda$3$lambda$2(PaymentMethodAdapter.kt:122)
          at com.adyen.checkout.ui.core.internal.ui.view.AdyenSwipeToRevealLayout$gestureListener$1.onSingleTapConfirmed(AdyenSwipeToRevealLayout.kt:219)
          at android.view.GestureDetector$GestureHandler.handleMessage(GestureDetector.java:379)
          at android.os.Handler.dispatchMessage(Handler.java:106)
          at android.os.Looper.loopOnce(Looper.java:230)
          at android.os.Looper.loop(Looper.java:319)
          at android.app.ActivityThread.main(ActivityThread.java:8919)
          at java.lang.reflect.Method.invoke(Method.java)
          at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:578)
          at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103)

Code Snippets

Provide code snippets where the SDK is implemented in your project.

    val dropInCheckoutConfiguration = DropInConfiguration.Builder(env, key)
        .addCardConfiguration(cardConfiguration)
        .build()
...

    val dropInLauncher = rememberLauncherForDropInResult(sessionDropInCallback)
    SideEffect {
        DropIn.startPayment(
            context,
            dropInLauncher,
            checkoutSession,
            PaymentManager.dropInCheckoutConfiguration
        )
    }

Integration Information

  1. Server-side integration: Sessions flow
  2. Client-side integration: Drop-in
  3. SDK version: 5.11.0
  4. Android version(s) where issue occurs: Android 14
  5. Device model(s) where issue occurs: Samsung Galaxy A15

Additional Context

Hundreds / thousands of payments occur successfully, so entirely possible this is just a one-off due to an unusual situation on the device.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Confirmed bugIndicates that issue has been confirmed to be a bug by an Adyen developer

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions