如何解决 flutter 中的权限处理程序错误?
How to solve permission handler error in flutter?
不确定我在哪里犯了错误,但我在执行 permission_handler: ^7.1.0 时出错,错误消息是 ``` C:\src\flutter.pub-cache\hosted\http:/ /pub.dartlang.org\permission_handler-7.2.0\android\src\main\java\com\baseflow\permissionhandler\ServiceManager.java:152:警告:[弃用] BluetoothAdapter 中的 getDefaultAdapter() 已弃用
最终蓝牙适配器 bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
^
错误:发现警告并指定 -Werror
1 个错误
1 个警告
失败:构建失败,出现异常。
- 出了什么问题:
任务 ':permission_handler:compileDebugJavaWithJavac' 执行失败。
Compilation failed; see the compiler error output for details.
尝试:
运行 使用 --stacktrace 选项获取堆栈跟踪。 运行 使用 --info 或 --debug 选项以获得更多日志输出。 运行 使用 --scan 以获得完整的见解。
- 获取更多帮助
1 分钟 10 秒后构建失败
异常:Gradle 任务 assembleDebug 失败,退出代码为 1```
下面我附上了必要的截图
而且我还在 Androidmanifest
中给予了许可
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
以及 compileSdkVersion 31、minSdkVersion 21、targetSdkVersion 30。希望我已经提供了所有必要的细节。如果有任何需要,请发表评论并帮助解决这个问题,我不想更改我的 sdk 版本。在此先感谢您。
尝试 flutter clean,删除 pubspec.lock 文件。然后运行 flutter pub get 然后flutter 运行。它应该可以解决问题。
在android\app\build.gradle中将compileSdkVersion改为30或31可以解决这个问题
不确定我在哪里犯了错误,但我在执行 permission_handler: ^7.1.0 时出错,错误消息是 ``` C:\src\flutter.pub-cache\hosted\http:/ /pub.dartlang.org\permission_handler-7.2.0\android\src\main\java\com\baseflow\permissionhandler\ServiceManager.java:152:警告:[弃用] BluetoothAdapter 中的 getDefaultAdapter() 已弃用 最终蓝牙适配器 bluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); ^ 错误:发现警告并指定 -Werror 1 个错误 1 个警告
失败:构建失败,出现异常。
- 出了什么问题: 任务 ':permission_handler:compileDebugJavaWithJavac' 执行失败。
Compilation failed; see the compiler error output for details.
尝试: 运行 使用 --stacktrace 选项获取堆栈跟踪。 运行 使用 --info 或 --debug 选项以获得更多日志输出。 运行 使用 --scan 以获得完整的见解。
- 获取更多帮助
1 分钟 10 秒后构建失败
异常:Gradle 任务 assembleDebug 失败,退出代码为 1```
下面我附上了必要的截图
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
以及 compileSdkVersion 31、minSdkVersion 21、targetSdkVersion 30。希望我已经提供了所有必要的细节。如果有任何需要,请发表评论并帮助解决这个问题,我不想更改我的 sdk 版本。在此先感谢您。
尝试 flutter clean,删除 pubspec.lock 文件。然后运行 flutter pub get 然后flutter 运行。它应该可以解决问题。
在android\app\build.gradle中将compileSdkVersion改为30或31可以解决这个问题