crisp-im / crisp-sdk-android

:package: Crisp Android SDK, add a chat in any Android app and communicate with your users.
https://docs.crisp.chat/guides/chatbox-sdks/android-sdk/
Other
56 stars 17 forks source link

Bad proguard configuration #135

Closed Damien-L closed 2 years ago

Damien-L commented 2 years ago

We're using version 1.0.12 and facing some crashes. Note that these crashes are not the issue. The issue is we think there is something wrong about the Crisp SDK Proguard rules because the following stacktraces are partly obfuscated (crashes that are not Crisp crashes are well deobfuscated).

Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String im.crisp.client.internal.i.a.f()' on a null object reference at im.crisp.client.internal.t.b.a(:10) at im.crisp.client.internal.j.a.a(:22) at im.crisp.client.internal.j.a.onPostExecute(:2) at android.os.AsyncTask.finish(AsyncTask.java:771) at android.os.AsyncTask.access$900(AsyncTask.java:199) at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:788) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:263) at android.app.ActivityThread.main(ActivityThread.java:8317) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:612) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1006)

Fatal Exception: java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState at androidx.fragment.app.FragmentManager.checkStateLoss(FragmentManager.java:1601) at androidx.fragment.app.FragmentManager.enqueueAction(FragmentManager.java:1641) at androidx.fragment.app.BackStackRecord.commitInternal(BackStackRecord.java:341) at androidx.fragment.app.BackStackRecord.commit(BackStackRecord.java:306) at androidx.fragment.app.DialogFragment.show(DialogFragment.java:262) at im.crisp.client.internal.t.a.a(:24) at im.crisp.client.internal.t.a.a() at im.crisp.client.internal.t.a$a.b(:8) at im.crisp.client.internal.t.a$a.$r8$lambda$LH1Zpaiddg7pzuicp5l3H-8YovA() at im.crisp.client.internal.t.a$a$$ExternalSyntheticLambda11.run(:4) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loopOnce(Looper.java:226) at android.os.Looper.loop(Looper.java:313) at android.app.ActivityThread.main(ActivityThread.java:8669) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1135)

Doc1faux commented 2 years ago

Hi @Damien-L and thank your for your feedback.

As the Crisp SDK is not FOSS (non-Free as in speech nor Open-Source Software), we do not disclose its sources so it is intended that lines in stacktraces involving the Crisp SDK (i.e. im.crisp.client) are not deobfuscated, only us are able to deobfuscate stacktraces and we do it in order to resolve any issue you developers face ;)

Now, about the two crashes you have reported, both have been fixed in the 1.0.13 release. See issues #126 and #74.

So I close the issue.