Einzelnen Beitrag anzeigen

LabRat

Registriert seit: 8. Jan 2014
Ort: Mainz
8 Beiträge
 
Delphi 10.4 Sydney
 
#1

Problem mit Classis Bluetooth bei Android 4.3/4.4

  Alt 31. Jul 2018, 14:19
Hallo zusammen,

ich habe meine Android-App, die ich zunächst unter Berlin (10.1.2) entwickelt habe, auf Tokyo (10.2.3) portiert.
Das hat grundsätzlich gut funktioniert. Aber : Die App hat unter anderem eine Funktion, mit der Daten per Classic Bluetooth von einem Messgerät abgerufen werden.
Ich habe dann festgestellt, dass die Bluetooth - Anbindung (BL Classic) unter Android 4.3 und 4.4 nicht mehr funktioniert.
Der Fehler stellt sich wie folgt dar :
Der Connect auf das Messgerät funktioniert. Aber sobald unter den genannten Betriebssystemen ein Zeichen übertragen wird, gibt es eine Exception.
Es wird ein Segmentation Fault (11) ausgegeben.

Ich verwende für die Verbindung einen TBluetoothSocket, der mit CreateClientsocket erzeugt wird. Nach dem Connect werden die Daten in einem Thread mittels TBluetoothSocket.RceiveData abgerufen.

Beim Debuggen zeigt sich, dass die Exception in der Unit System.Android.Bluetooth auftritt und zwar in der procedure TAndroidBluetoothSocket.TBluetoothSocketReader.Get BufferedData.

Das Problem tritt nicht auf bei Android 6 und Android 7. Es tritt nur bei meinen Android 4.3 u. Android 4.4 - Smartphones auf.
Ich habe derzeit kein Gerät mit Android 5 zur Verfügung, kann also zu dieser Version nichts sagen.

Was noch wichtig ist : Wenn ich die App mit Delphi Berlin (10.1.2) erzeuge, dann funktioniert die Übertragung mit allen Betriebssystemversionen fehlerfrei. Gemäß der Dokumentation zu Tokyo sollte eigentlich Android 4.3 und 4.4 weiter unterstützt werden.

Kennt jemand das Problem bzw. kann mir da jemand weiterhelfen ?

Vielen Dank

LabRat - die Laborratte
  Mit Zitat antworten Zitat