AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Cross-Platform-Entwicklung Delphi BluetoothLE - onMtuChanged Event
Thema durchsuchen
Ansicht
Themen-Optionen

BluetoothLE - onMtuChanged Event

Ein Thema von Prime5 · begonnen am 28. Okt 2021 · letzter Beitrag vom 29. Okt 2021
 
Prime5

Registriert seit: 28. Okt 2021
1 Beiträge
 
#1

BluetoothLE - onMtuChanged Event

  Alt 28. Okt 2021, 11:53
Hallo Zusammen,

für ein Bluetooth-Projekt in dem unter Androuid die MTU angepasst werden soll ist es für mich notwendig zu erfahren,
auf welchen MTU-Wert sich die verwendeten Geräte nach einem Aufruf der "requestMtu"-Funktion geeinigt haben.

Die "TBluetoothLEDevice.RequestMtu"-Funktion löst dabei im "Android Device Monitor" die folgenden Events aus:

BluetoothGatt: configureMTU() - device: XX:XX:XX:XX:XX:XX mtu: 512
BluetoothGatt: onConnectionUpdated() - Device=XX:XX:XX:XX:XX:XX interval=6 latency=0 timeout=500 status=0
BluetoothGatt: onConfigureMTU() - Device=XX:XX:XX:XX:XX:XX mtu=23 status=0
Nun habe ich gesehen, dass es in der Datei "Androidapi.JNI.Bluetooth.pas" die folgende Deklaration gibt:
Code:
[JavaSignature('android/bluetooth/BluetoothGattCallback')]
  JBluetoothGattCallback = interface(JObject)
    ['{E07848AC-B968-4C94-9F67-4DC5E62CB8D3}']
 ...
    procedure onMtuChanged(gatt: JBluetoothGatt; mtu: Integer; status: Integer); cdecl;
 ...
  end;
Allerdings gibt es hierzu keine weitere Implementierung.

Meine Idee wäre nun gewesen, in der Klasse "TAndroidBluetoothGattListener" aus "System.Android.Bluetooth" die folgende Prozedur anzulegen:
Code:
procedure TAndroidBluetoothGattListener.onMtuChanged(gatt: JBluetoothGatt; mtu, status: Integer);
und hier dann den Wert über weitere Funktionen am Vorbild der anderen Funktionsimplementationen nach oben hin durchzuschleifen:
Code:
  FGatt.DoOnMTUChanged(FGatt, mtu, TBluetoothGattStatus(status))
Zum aktuellen Stand sieht es für mich aber so aus, als wenn die "TAndroidBluetoothGattListener.onMtuChanged"-Funktion gar nicht erst aufgerufen werden würde.
Kann mir jemand von euch einen Tipp geben, wie oder wo ich dieses Event Implementieren kann, sodass ich es durch die verschiedenen Bluetooth-Klassen in meine Logik durchschleifen kann?
  Mit Zitat antworten Zitat
 

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:27 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz