Ich habe ein Problem, weiss aber nicht, ob es hier richtig ist:
Ich habe Delphi 12 CE. Seit dem geht das BluetoothLe nicht mehr. Das Programm bleibt immer bei BluetoothLEEndDiscoverServices hängen und geht nicht mehr weiter.
Zitat:
const
xServiceUuid: TGuid = '{0000180F-0000-1000-8000-00805F9B34FB}';
xBatteryUuid: TGuid = '{00001001-0000-1000-8000-00805F9B34FB}';
xTemperaturUuid: TGuid = '{00001002-0000-1000-8000-00805F9B34FB}';
xFallUuid: TGuid = '{00001003-0000-1000-8000-00805F9B34FB}';
xEpilepsyUuid: TGuid = '{00001004-0000-1000-8000-00805F9B34FB}';
xInstheightUuid: TGuid = '{00001005-0000-1000-8000-00805F9B34FB}';
xSensitivityUuid: TGuid = '{00001006-0000-1000-8000-00805F9B34FB}';
xThresholdUuid: TGuid = '{00001007-0000-1000-8000-00805F9B34FB}';
xDistanceUuid: TGuid = '{00001008-0000-1000-8000-00805F9B34FB}';
xBreathrateUuid: TGuid = '{00001009-0000-1000-8000-00805F9B34FB}';
xHeartrateUuid: TGuid = '{00001010-0000-1000-8000-00805F9B34FB}';
var
FormMain: TFormMain;
implementation
{$R *.fmx}
procedure TFormMain.BluetoothLECharacteristicRead(const Sender: TObject;
const ACharacteristic: TBluetoothGattCharacteristic;
AGattStatus: TBluetoothGattStatus);
var s: String;
begin
s:= ACharacteristic.GetValueAsString();
showmessage(s);
end;
procedure TFormMain.BluetoothLEDiscoverLEDevice(const Sender: TObject;
const ADevice: TBluetoothLEDevice; Rssi: Integer;
const ScanResponse: TScanResponse);
var aService: TBluetoothGattService;
aCharacteristic: TBluetoothGattCharacteristic;
begin
if ADevice.DeviceName.StartsWith('FS') then begin
aDevice.DiscoverServices;
end;
end;
procedure TFormMain.BluetoothLEEndDiscoverServices(const Sender: TObject;
const AServiceList: TBluetoothGattServiceList);
var aService: TBluetoothGattService;
aCharacteristic: TBluetoothGattCharacteristic;
begin
for aService in aservicelist do begin
aService.Characteristics;
aService.GetCharacteristic(xBatteryUuid);
end;
end;
Kann mir Jemand helfen?
L.G.
Axel