pusher / chatkit-android

Android client SDK for Pusher Chatkit
https://pusher.com/chatkit
MIT License
53 stars 14 forks source link

app is crashing when i try to login? #51

Closed Iamasthme closed 6 years ago

Iamasthme commented 6 years ago

Caused by java.util.concurrent.ExecutionException: java.lang.NoClassDefFoundError: com.pusher.chatkit.ChatkitTokenProvider$add$1 at java.util.concurrent.FutureTask.report(FutureTask.java:94) at java.util.concurrent.FutureTask.get(FutureTask.java:164) at com.pusher.platform.network.FlatMapFuture.get(Futures.kt:71) at com.pusher.platform.subscription.TokenProvidingSubscription.subscribe(TokenProvidingSubscription.kt:53) at com.pusher.platform.subscription.TokenProvidingSubscription.(TokenProvidingSubscription.kt:43) at com.pusher.platform.subscription.TokenProvidingSubscriptionKt$createTokenProvidingStrategy$1.invoke(TokenProvidingSubscription.kt:19) at com.pusher.platform.subscription.TokenProvidingSubscriptionKt$createTokenProvidingStrategy$1.invoke(TokenProvidingSubscription.kt) at com.pusher.platform.subscription.ResumingSubscription$OpeningSubscriptionState.(ResumingSubscription.kt:109) at com.pusher.platform.subscription.ResumingSubscription.(ResumingSubscription.kt:39) at com.pusher.platform.subscription.ResumingSubscriptionKt$createResumingStrategy$1.invoke(ResumingSubscription.kt:18) at com.pusher.platform.subscription.ResumingSubscriptionKt$createResumingStrategy$1.invoke(ResumingSubscription.kt) at com.pusher.platform.BaseClient.subscribeResuming(BaseClient.kt:59) at com.pusher.platform.Instance.subscribeResuming(Instance.kt:72) at com.pusher.platform.Instance.subscribeResuming(Instance.kt:50) at com.pusher.platform.Instance.subscribeResuming$default(Instance.kt:49) at com.pusher.chatkit.ChatManager.subscribeResuming$chatkit_core(ChatManager.kt:155) at com.pusher.chatkit.ChatManager.subscribeResuming$chatkit_core$default(ChatManager.kt:154) at com.pusher.chatkit.users.UserSubscription.(UserSubscription.kt:32) at com.pusher.chatkit.ChatManager.openSubscription(ChatManager.kt:59) at com.pusher.chatkit.ChatManager.connect(ChatManager.kt:55) at com.pusher.chatkit.ChatManager.connect(ChatManager.kt:86) at wellthy.care.pusher.PusherChat.connect(PusherChat.kt:94) at wellthy.care.feature.onboarding.phone.PhoneVerificationActivity$navigateUserToMainFlow$1.onComplete(PhoneVerificationActivity.kt:234) at com.google.android.gms.tasks.zzf.run(Unknown Source) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:148) at android.app.ActivityThread.main(ActivityThread.java:5461) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)

Iamasthme commented 6 years ago

added a fix

here

Please close when its merged

pablisco commented 6 years ago

@Iamasthme Can you please verify that this actually fixes the problem? In kotlin forEach calls are replaced by for(in) at compile time: https://github.com/JetBrains/kotlin/blob/1.2.50/libraries/stdlib/common/src/generated/_Maps.kt#L146 So I'm quite sure this change won't fix the issue in question.

pablisco commented 6 years ago

NoClassDefFoundError on Android tend to occur when the compiled code is incorrectly cached or there is a problem dexing the result. Doing invalidate/restart would likely fix the issue you are having, these changes don't seem to be necessary, but I could be wrong. Let me know if you need any help.