如何解决flutter中的权限处理程序错误?
Posted
技术标签:
【中文标题】如何解决flutter中的权限处理程序错误?【英文标题】:How to solve permission handler error in flutter? 【发布时间】:2021-12-14 21:20:57 【问题描述】:不确定我在哪里犯了错误,但在实现 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 中的 [deprecation] getDefaultAdapter() 已被弃用 最终蓝牙适配器 bluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); ^ 错误:发现警告并指定 -Werror 1 个错误 1 个警告
FAILURE:构建失败并出现异常。
出了什么问题: 任务 ':permission_handler:compileDebugJavaWithJavac' 执行失败。编译失败;有关详细信息,请参阅编译器错误输出。
尝试: 使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。运行 --scan 以获得完整的见解。
通过https://help.gradle.org获得更多帮助
在 1m 10s 内构建失败 异常: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"/>
然后编译SdkVersion 31、minSdkVersion 21、targetSdkVersion 30。希望我已经给出了所有必要的细节。如果有什么需要请发表评论并请帮助解决这个问题,我不想更改我的 sdk 版本。提前谢谢你。
【问题讨论】:
【参考方案1】:尝试flutter clean,删除pubspec.lock文件。然后运行flutter pub get,然后运行flutter run。它应该可以解决问题。
【讨论】:
No @kaushik 仍然出现同样的错误 在 pubspec.yaml 文件中提供permission_handler:any
并尝试一次
我遇到了同样的错误,伙计@kaushik
在此处粘贴完整的错误。
在 permission_handler: any 和 flutter clean 之后,删除 pubspec.lock 文件。然后运行 flutter pub get ,然后运行 flutter run ,它工作正常,没有任何错误。但是我怎么知道它使用的是哪个版本,因为我们将它指定为“any”?【参考方案2】:
在 android\app\build.gradle 中将 compileSdkVersion 改为 30 或 31 可以解决这个问题
【讨论】:
以上是关于如何解决flutter中的权限处理程序错误?的主要内容,如果未能解决你的问题,请参考以下文章
如何解决 Flutter 中的 MediaQuery 错误? [复制]
错误:找不到成员:'packageRoot',如何解决忽略:Flutter 中的 deprecated_member_use?
构建 Flutter iOS 应用程序时如何解决“格式错误的项目”构建错误
如何解决此问题 [错误:flutter/lib/ui/ui_dart_state.cc(199)] 未处理的异常:NoSuchMethodError:getter 'phone' 被调用为 null。