如何使用react-native-ble-plx打开移动的蓝牙?

c0vxltue  于 2023-01-21  发布在  React
关注(0)|答案(2)|浏览(384)

我的移动的应用程序具有打开移动设备蓝牙并在屏幕上显示蓝牙设备列表的功能。我正在使用react-native-ble-plx库实现此功能。我需要使用react-native-ble-plx库打开移动设备的BLE。该库中有任何方法可用于打开BLE?

1tuwyuhd

1tuwyuhd1#

react-native-ble-plx没有这个功能,但是你可以使用react-native-bluetooth-state-manager。它允许你读取当前的蓝牙状态(启用/禁用),并在iOS和Android上打开蓝牙设置页面。甚至可以在Android上启用(和禁用)蓝牙,而无需用户交互,但是你必须在清单中添加BLUETOOTH_ADMIN权限。
但是我建议你不要在没有用户交互的情况下激活蓝牙,只需检查状态并显示如下消息
使用此应用需要蓝牙。请通过设置激活它
只有在蓝牙启用后才允许使用应用程序的其余部分。如果用户禁用蓝牙,而它突然被激活,他可能会感到困惑。

iswrvxsc

iswrvxsc2#

现在可以使用react-native-ble-plx打开蓝牙。警报的工作示例:

const subscription = BLTManager.onStateChange((state) => {  // check if device bluetooth is powered on, if not alert to enable it!
        if (state === 'PoweredOff') {
          Alert.alert('"App" would like to use Bluetooth.', 'This app uses Bluetooth to connect to and share information with your .....', [
            {
              text: "Don't allow",
              onPress: () => console.log('Cancel Pressed'),
              style: 'cancel',
            },
            { text: "Turn ON", onPress: () => { BLTManager.enable(); scanDevices() } },
          ]);

          subscription.remove();
        }
      }, true);

相关问题