颤振"Bluetooth permission missing in manifest"



我正在尝试将蓝牙添加到我的应用程序中以打印凭证

我使用permission_handler: ^10.2.0

android清单:


<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.BLUETOOTH"
android:maxSdkVersion="30" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"
android:maxSdkVersion="30" />
>
<uses-permission android:name="android.permission.BLUETOOTH_SCAN" />

<uses-permission android:name="android.permission.BLUETOOTH_ADVERTISE" />
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>

我已经尝试了多个权限,并多次添加和删除它们

请求许可

Map<Permission, PermissionStatus> status = await [
Permission.bluetoothConnect,
Permission.bluetoothAdvertise,
Permission.bluetooth,
Permission.bluetoothScan,
].request();
print(status);

我在输出中得到这个

Bluetooth permission missing in manifest
I/flutter (13811): {Permission.bluetooth: PermissionStatus.denied, Permission.bluetoothScan: PermissionStatus.granted, Permission.bluetoothAdvertise: PermissionStatus.granted, Permission.bluetoothConnect: PermissionStatus.granted}
D/FlutterBluePlugin(13811): Connecting to 00:1B:35:11:2B:BA (id: 6)
I/flutter (13811): PlatformException(connect_error, UID 10339 / PID 13811 lacks permission android.permission.BLUETOOTH, java.lang.SecurityException: UID 10339 / PID 13811 lacks permission android.permission.BLUETOOTH

它说蓝牙权限在manifest中缺失,但它被添加了,我做了Flutter清洁,Flutter酒吧升级,似乎没有工作

有人能帮我吗?

2023年5月更新

对部分3.0.1和颤振3.10.0的试验

以前我使用的PR来自Calm。它工作得很好。但不知怎么的,它给了我一个错误。

然后我决定改变回购。我认为他们使用了不同的方法。现在我使用from @bswhite1

flutter_bluetooth_serial:
git:
url: https://github.com/bswhite1/flutter_bluetooth_serial.git
ref: android_12_updates

更改依赖项后不要忘记flutter clean

PR有3个选项:https://github.com/edufolly/flutter_bluetooth_serial/pulls?q=android + 12 +

你可以试试哪一个适合你的项目。

老回答

此问题发生在android 12之后。0.4.0版本只支持android 12以下版本。

我在android 10上测试了这个包,它的工作很好,但是forAndroid 12我也有同样的问题

维护flutter_bluetooth_serial

包的开发人员长期不更新包。在存储库上提出了一些问题。有些开发者还会为解决方案提高PR。

你可以在github上找到一些建议。https://github.com/edufolly/flutter_bluetooth_serial/issues/161

这里我用的是

改变你的pubspec.yaml

从这个:
dependencies:
flutter_bluetooth_serial: ^0.4.0
  • :
flutter_bluetooth_serial:
git:
url: https://github.com/calmh/flutter_bluetooth_serial.git
ref: android12

相关内容

  • 没有找到相关文章

最新更新