FeitianSmartcardReader / FEITIAN_MOBILE_READERS

This is first Combo SDK, support bR301,iR301,bR301BLE,bR500
http://www.pcscreader.com/docs/getting_started.html
24 stars 13 forks source link

Uncatchable internal lib crash black micro usb ble301 for combination 2.0.1.3 & USB\VID_096E&PID_0624&REV_0112 #47

Open Anioz opened 11 months ago

Anioz commented 11 months ago

I have provided some testdata in the hopes of making debugging this issue easier:

cardreader USB-C: USB\VID_096E&PID_0624&REV_0225 Test : OK (very fast readout)

cardreader USB-C: USB\VID_096E&PID_0624&REV_0222 Test : OK (fast readout)

cardreader Micro USB: USB\VID_096E&PID_0624&REV_0112 Test : NOK (uncatchable app crash with 2.0.1.3 | slower readout but ok on older version 1.0.9.6)

cardreader Micro USB: USB\VID_096E&PID_0624&REV_0112 Test : NOK (uncatchable app crash with 2.0.1.3 | slower readout but ok on older version 1.0.9.6)

All of the older cardreaders type micro usb with product & fw PID_0624&REV_0112 end up in an app crash while ignoring try catches in xamarin.android & pcl xamarin (seems like an uncatchable internal lib error):

[MonoDroid] Java.Lang.NullPointerException: Attempt to invoke virtual method 'android.bluetooth.BluetoothGattCharacteristic android.bluetooth.BluetoothGattService.getCharacteristic(java.util.UUID)' on a null object reference [MonoDroid] --- End of managed Java.Lang.NullPointerException stack trace --- [MonoDroid] java.lang.NullPointerException: Attempt to invoke virtual method 'android.bluetooth.BluetoothGattCharacteristic android.bluetooth.BluetoothGattService.getCharacteristic(java.util.UUID)' on a null object reference [MonoDroid] at com.ftsafe.comm.bt4.BluetoothLeClass.readPowerState(BluetoothLeClass.java:204) [MonoDroid] at com.ftsafe.comm.bt4.BT4.getPowerState(BT4.java:400) [MonoDroid] at com.ftsafe.comm.CommBase.getPowerState(CommBase.java:108) [MonoDroid] at com.ftsafe.readerScheme.FTReader$1.run(FTReader.java:623) Thread started: < Thread Pool > # 14 [MonoDroid] at java.lang.Thread.run(Thread.java:1012) Java.Lang.NullPointerException: 'Attempt to invoke virtual method 'android.bluetooth.BluetoothGattCharacteristic android.bluetooth.BluetoothGattService.getCharacteristic(java.util.UUID)' on a null object reference'

Our customers with an older cardreader get this issue only when using the newest driver FTReaderAPI_2.0.1.3.jar, libFTReaderPCSC_2.0.1.3.so

These tests were done on Android 13. We are also open to try out experimental builds

Stunc0 commented 10 months ago

I think this can be linked and be the same problem than my issue : https://github.com/FeitianSmartcardReader/FEITIAN_MOBILE_READERS/issues/45

mjiricek commented 6 months ago

Did you manage to solve this issue? I have the same issue...

Anioz commented 6 months ago

@mjiricek We solved it for our clients by rolling back to 1.0.9.6 for now which works with all models without the listed crash.

mjiricek commented 6 months ago

Thank you for your reply. This isn't solution for me because I also have an issue with 1.0.9.6