AuthorizeNet / inperson-sdk-android

Mobile SDK for Android point-of-sale applications
Other
23 stars 38 forks source link

Couple of crashes inside Android SDK #83

Open jayanth-quintet opened 3 years ago

jayanth-quintet commented 3 years ago

We are using the InPerson Android SDK for our app to implement card present transactions. We use BBPOS chipper 2x bluetooth swipers (https://partner.posportal.com/authorizenet/auth/authorize-net-bbpos-chippertm-2x-bluetooth-card-reader.html)

We are able to integrate the swipers and complete transactions. However, we are seeing random crashes being reported in the crash reporting tool we use (Firebase). We are not able to reproduce these crashes at our end. However, some of our end users reported that their app got crashed when trying to do swipe transactions.

These are the crashlogs

Crash 1

Fatal Exception: java.lang.StringIndexOutOfBoundsException: length=139; index=139
       at java.lang.String.charAt(String.java)
       at net.authorize.aim.emv.ecdhencryptdecrypt.Utils.hexStringToByteArray(:62)
       at net.authorize.aim.emv.QuickChipActivity.ॱ(:728)
       at net.authorize.aim.emv.QuickChipActivity.onReturnCheckCardResult(:652)
       at net.authorize.aim.emv.І$ǃ.onReturnCheckCardResult(:157)
       at com.bbpos.bbdevice.BBDeviceController$82.run(:3270)
       at android.os.Handler.handleCallback(Handler.java:938)
       at android.os.Handler.dispatchMessage(Handler.java:99)
       at android.os.Looper.loop(Looper.java:246)
       at android.app.ActivityThread.main(ActivityThread.java:8512)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:602)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1139)

Crash 2

Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.bbpos.bb03z.l.aaa010(boolean)' on a null object reference
       at com.bbpos.bbdevice.BBDeviceController.setDetectAudioDevicePlugged(:8933)
       at net.authorize.aim.emv.QuickChipActivity$15.run(:308)
       at android.os.Handler.handleCallback(Handler.java:938)
       at android.os.Handler.dispatchMessage(Handler.java:99)
       at android.os.Looper.loop(Looper.java:246)
       at android.app.ActivityThread.main(ActivityThread.java:8512)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:602)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1139)

Crash 3

Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String java.lang.Enum.name()' on a null object reference
       at net.authorize.aim.emv.Result.toString(:1051)
       at java.lang.String.valueOf(String.java:3657)
       at java.lang.StringBuilder.append(StringBuilder.java:132)
       at kotlin.jvm.internal.Intrinsics.stringPlus(Intrinsics.java:20)
       at com.aftontickets.eventstaffdemo.hardwares.cardreaders.bbpos.BBPOSActivity.onEMVTransactionError(BBPOSActivity.kt:259)
       at net.authorize.aim.emv.QuickChipTransactionSession$1.onReceiveResult(:229)
       at android.os.ResultReceiver$MyRunnable.run(ResultReceiver.java:50)
       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)

Crash 4

Fatal Exception: java.lang.IllegalThreadStateException
       at java.lang.Thread.start(Thread.java:869)
       at com.bbpos.bbdevice.Ι$9.run(:1569)
       at java.lang.Thread.run(Thread.java:920)

The reported device is Samsung Galaxy A42 5G running Android 11. Our app only supports swipe transactions (no chip/EMV transactions).

Let us know if any other information is needed.