plaid / react-native-plaid-link-sdk

Plaid Link for React Native
MIT License
171 stars 120 forks source link

Crash opening link on Android: java.lang.ClassCastException: java.lang.Class cannot be cast to java.lang.reflect.ParameterizedType #681

Open jdconley opened 3 months ago

jdconley commented 3 months ago

The problem

App crashes immediately on a release build with ProGuard when using openLink. The application does not crash in my debug builds.

Environment

Release build!

Plaid Link React Native 11.10.3
ReactNative Version 0.74.1
Occurs on Android yes
Android OS Version 14 (34)
Android Devices/Emulators Pixel 8 physical
Occurs on iOS no
iOS Version
iOS Devices/Emulators
Link Session ID

Steps to Reproduce

Running the following versions:

        buildToolsVersion = "34.0.0"
        minSdkVersion = 30
        compileSdkVersion = 34
        targetSdkVersion = 34
        ndkVersion = "26.1.10909125"
        kotlinVersion = "1.9.22"

Also have a dependency version hack in place, mentioned in some other bugs.

    def work_version = "2.8.1"
    implementation "androidx.work:work-runtime:$work_version"
    implementation "androidx.work:work-runtime-ktx:$work_version"

Expected Result

Link to open

Screenshots

n/a

Logs

2024-06-11 13:45:00.221 15639-15694 ReactNativeJS           com.afterhour                        D  Creating Plaid link token with options: {"language":"en","options":{"android_package_name":"com.afterhour"}}
2024-06-11 13:45:00.750 15639-15694 ReactNativeJS           com.afterhour                        I  Plaid link token created: {"userId":"usr_fc59ae4bc97e48149f98616c899107e0","expiration":"2024-06-12T00:45:00.000Z","token":"link-production-[redacted]","createdAt":"2024-06-11T20:44:59.794Z"} 
2024-06-11 13:45:00.815 15639-15639 BranchSDK               com.afterhour                        V  onActivityPaused, activity = com.afterhour.MainActivity@1058540
2024-06-11 13:45:00.816 15639-15639 PlatformContext         com.afterhour                        I  Paused
2024-06-11 13:45:00.824 15639-15924 Compatibil...geReporter com.afterhour                        D  Compat change id reported: 194532703; UID 10299; state: ENABLED
2024-06-11 13:45:00.825 15639-15924 Compatibil...geReporter com.afterhour                        D  Compat change id reported: 253665015; UID 10299; state: ENABLED
2024-06-11 13:45:00.825 15639-15924 Compatibil...geReporter com.afterhour                        D  Compat change id reported: 311402873; UID 10299; state: DISABLED
2024-06-11 13:45:00.834 15639-15639 BranchSDK               com.afterhour                        V  onActivityCreated, activity = com.plaid.internal.link.LinkActivity@d1bbb19
2024-06-11 13:45:00.834 15639-15639 BranchSDK               com.afterhour                        V  onActivityStarted, activity = com.plaid.internal.link.LinkActivity@d1bbb19
2024-06-11 13:45:00.836 14762-14908 ReactNativeJNI          com.afterhour.chat.dev               I  Memory warning (pressure level: TRIM_MEMORY_BACKGROUND) received by JS VM, running a GC
2024-06-11 13:45:00.838 15639-15639 ContentCaptureHelper    com.afterhour                        I  Setting logging level to OFF
2024-06-11 13:45:00.839 15639-15639 BranchSDK               com.afterhour                        V  onActivityResumed, activity = com.plaid.internal.link.LinkActivity@d1bbb19
2024-06-11 13:45:00.839 15639-15639 BranchSDK               com.afterhour                        V  onIntentReady com.plaid.internal.link.LinkActivity@d1bbb19 removing INTENT_PENDING_WAIT_LOCK
2024-06-11 13:45:00.839 15639-15639 BranchSDK               com.afterhour                        V  processNextQueueItem onIntentReady
2024-06-11 13:45:00.839 15639-15639 BranchSDK               com.afterhour                        V  Queue is: 
2024-06-11 13:45:00.850 15639-15919 AndroidRuntime          com.afterhour                        E  FATAL EXCEPTION: DefaultDispatcher-worker-4
                                                                                                    Process: com.afterhour, PID: 15639
                                                                                                    java.lang.ClassCastException: java.lang.Class cannot be cast to java.lang.reflect.ParameterizedType
                                                                                                        at em.v.b(Unknown Source:2455)
                                                                                                        at em.w0.c(Unknown Source:24)
                                                                                                        at em.v0.invoke(Unknown Source:39)
                                                                                                        at java.lang.reflect.Proxy.invoke(Proxy.java:1006)
                                                                                                        at $Proxy11.a(Unknown Source)
                                                                                                        at com.plaid.internal.s9$a.invokeSuspend(Unknown Source:63)
                                                                                                        at bk.a.resumeWith(Unknown Source:7)
                                                                                                        at qk.l0.run(Unknown Source:114)
                                                                                                        at ye.n1.run(Unknown Source:34)
                                                                                                        at wk.i.run(Unknown Source:2)
                                                                                                        at wk.a.run(Unknown Source:91)
                                                                                                        Suppressed: vk.g: [v1{Cancelling}@a9a6ce6, Dispatchers.Default]
2024-06-11 13:45:00.853 15639-15709 Process                 com.afterhour                        I  Sending signal. PID: 15639 SIG: 9
---------------------------- PROCESS ENDED (15639) for package com.afterhour ----------------------------

Code To Reproduce Issue

Can put one together, but try a ProGuard release build.