flutter - 更新到 3.0.0 后颤振条形码扫描错误
问题描述
在我的颤振应用程序中,我将barcode_scan 包更新为3.0.0 版,但出现以下错误:
E/libc (11783):访问被拒绝查找属性“vendor.camera.hal1.packagelist”
扫描仪可以正常打开,一旦找到条形码,就会抛出错误。相机权限在清单中设置。我也发现了这个问题,但我不知道如何解决这个问题。可能我应该回到以前的版本吗?我的代码如下所示:
Future _scanFromCamera() async {
var options = ScanOptions(
autoEnableFlash: true,
useCamera: -1, // default camera
android: AndroidOptions(
useAutoFocus: true,
),
);
try {
scanResult = await BarcodeScanner.scan(options: options);
setState(() {
print(scanResult.rawContent);
this.barcode = scanResult.rawContent;
});
_showAlert(scanResult.rawContent);
} on PlatformException catch (e) {
if (e.code == BarcodeScanner.cameraAccessDenied) {
setState(() {
this.barcode = 'The user did not grant the camera permission!';
});
} else {
setState(() => this.barcode = 'Unknown error: $e');
}
} on FormatException {
setState(() => this.barcode = 'null (User returned using the "back"-button before scanning anything. Result)');
} catch (e) {
setState(() => this.barcode = 'Unknown error: $e');
}
}
更新 我刚刚发现这个错误也出现在版本barcode_scan:2.0.2中,但扫描工作正常。所以版本 3 的原因可能是另一个。
解决方案
我有同样的问题:
- 请将颤振版本更新到较新的版本。
- 然后按照以下说明操作:this
推荐阅读
- python - 在python中组合2个列表列表
- php - 如何使用 Yii 中带有 ID 列表的字段中的 ID 从数据库表中获取所有行?
- javascript - 如何更新OL4中的概览控件?
- javascript - 自定义 HTML src 属性中的 GTM 变量
- swift - 如何将 Swift 中的数据从 NSArray 转换为 Dictionary?
- database - 如何在 Oracle 数据库中添加默认空值
- qt - 如何更新 Qt 维护工具
- php - 排除同名项目
- php - 在 Laravel 中根据表单值搜索数据
- java - NoClassDefFoundError 总是由 ClassNotFoundException 引起的吗?