如何使用 Delphi 10.3 (Firemonkey) App 为 Android 和 iOS 检查蓝牙适配器 (ON/OFF) 的状态

How to check the status of BlueTooth adapter (ON/OFF) with Delphi 10.3 (Firemonkey) App for both Android and iOS

我正在编写一个基于物联网 (BLE) 的 Firemonkey 应用程序,我需要检查 iOS 和 Android 的蓝牙适配器是否已启用。

我找到了一个来源 here,但它仅适用于 android(与其他许多人一样),但我需要一个跨平台解决方案。

我在 here 上找到了合适的解决方案。

uses System.Bluetooth;

function IsBluetoothLEAdapterEnabled: Boolean;
var
  manager: TBluetoothLEManager;
  adapt: TBluetoothLEAdapter;
begin
  Result := False;
  try
    manager := TBluetoothLEManager.CreateInstance;
  except
    exit;
  end;

  try
    adapt := manager.CurrentAdapter;
  except
    exit;
  end;

  try
    if adapt.State = TBluetoothAdapterState.On then
    begin
      // BluetoothLE Adapter was found
      Result := True;
      exit;
    end;
  except
    exit;
  end;
end;

结束执行如下

  if IsBluetoothLEAdapterEnabled then
    ShowMessage('BluetoothLE ON')
  else
    ShowMessage('BluetoothLE OFF');