我们在本章回中主要介绍三方包bluetooth_enable_fork的用法,该包主要用来打开手机上的蓝牙开关,它会弹出一个窗口供用户选择,然后依据用户的选择打开或者
关闭蓝牙开关。我们在上一章回中的介绍的包可以打开蓝牙开关,不过它是通用功能包,它可以打开手机上的其它功能设置。本章回中介绍的包是专用功能包,它只能用来
打开手机上的蓝牙开关。
该包提供了enableBluetooth()方法来打开蓝牙,它会弹出一个简单的对话框窗口让用户选择是否打开手机上的蓝牙开关。该方法是静态方法,可以直接调用,该方法
返回的是Future,因此可以在then方法中获取蓝牙开关是否被打开的结果。我们将在后面的小节中通过示例代码来演示它的用法。
该包还提供了customBluetoothRequest()方法来打开蓝牙开关,它会弹出一个自定义的对话框窗口让用户选择是否打开手机上的蓝牙开关。该方法是静态方法,可以
直接调用。该方法中提供了dialogTitle,dialogContent等参数,通过这些参数可以控制对话框窗口的风格和内容。与上一小节中介绍的简单方法相比,该方法可以
弹出一个可以自定义的对话框,提高了程序的灵活性,比如,我们可以修改窗口中显示的内容,窗口中按钮上的文字。
///只弹出一个简单窗口
ElevatedButton(
onPressed: (){
BluetoothEnable.enableBluetooth.then((value) {
debugPrint("value is: $value");
});
},
child: const Text("Open BT"),
),
///可以弹出复杂窗口,窗口可以自定义,不过风格不能修改,比如文字颜色大小
ElevatedButton(
onPressed: (){
BluetoothEnable.customBluetoothRequest(
context, dialogTitle,
true, dialogContent,
cancelBtnText, acceptBtnText,
dialogRadius, barrierDismissible);
},
child: const Text("Open BT by Dialog"),
)
上面的示例代码显示了该包的两种使用方法,代码不多,很容易理解。我在这里就不演示程序的运行结果了,建议大家自己动手去实践。在实际的项目中,大家可以依据项
目需求选择其中任意一种方法来打开手机上的蓝牙开关。
最后,我们对本章回的内容做一个全面的总结: