gpt4 book ai didi

dart - Flutter Blue 示例无法通过扫描我的蓝牙 PC、其他 Android 手机和 iOS 找到

转载 作者:行者123 更新时间:2023-12-03 17:31:00 25 4
gpt4 key购买 nike

Flutter Blue 无法找到我所有运行他们提供的示例应用程序的蓝牙设备。不显示错误消息。蓝牙适配器已开启且所有设备均兼容 BLE。

https://gyazo.com/27f907034570f860997026ed295be026

我已经尝试通过外部 Android 工具配对设备并在不配对的情况下进行测试。没有显示任何设备。

_Scan() {
print('STARTED');

if (!isScanning) {
print('SCANNING');
setState(() { isScanning = true; });
scanSubscription = flutterBlue.scan().listen((scanResult) {
print('Scan Result');
print('localName: ${scanResult.advertisementData.localName}');
print(
'manufacturerData: ${scanResult.advertisementData
.manufacturerData}');
print('serviceData: ${scanResult.advertisementData.serviceData}');
}, onDone: _StopScan);
}
}

示例应用程序执行其缓冲动画并在未找到设备的情况下停止。

预期行为是查找设备并将它们打印为主应用程序屏幕上的列表。

最佳答案

在带有 --release 标志的设备上进行测试时,我遇到了这个问题。
显然, flutter 蓝色的缩小存在问题。有两种方法可以解决此问题,如本期所列:https://github.com/pauldemarco/flutter_blue/issues/662
在 android/app/build.gradle 中,您可以禁用小型化:

android {
...
buildTypes {
release {
signingConfig signingConfigs.debug
shrinkResources false
minifyEnabled false
}
}
或者你可以创建一个 proguard 规则来防止 flutter_blue 最小化:
在 android/app/build.gradle 中:
android {
...
buildTypes {
release {
signingConfig signingConfigs.debug
minifyEnabled true
useProguard true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
并在 android/app/proguard-rules.pro 中创建一个文件,内容如下:
-keep class com.pauldemarco.flutter_blue.** { *; }

关于dart - Flutter Blue 示例无法通过扫描我的蓝牙 PC、其他 Android 手机和 iOS 找到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54171702/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com