1、需在pubspec.yaml中导入如下红色箭头的库,并执行flutter packages get命令

2、在需要生成二维码的界面导入以下头文件

3、在触发扫描二维码的方法中调用以下代码即可
Futurescan()async {
try {
// 此处为扫码结果,barcode为二维码的内容
String barcode =await BarcodeScanner.scan();
print('扫码结果: '+barcode);
if (barcode.contains('target=%2Fusers%2F')) {
//扫描到了用户uid
}else if(barcode.contains('m/invitation.html')) {
//跳转到H5
}
}on PlatformExceptioncatch (e) {
if (e.code == BarcodeScanner.CameraAccessDenied) {
// 未授予APP相机权限
print('未授予APP相机权限');
//未授予APP相机权限--打开设置页面去设置
bool isOpened =await PermissionHandler().openAppSettings();
}else {
// 扫码错误
print('扫码错误: $e');
}
}on FormatException {
// 进入扫码页面后未扫码就返回
print('进入扫码页面后未扫码就返回');
}catch (e) {
// 扫码错误
print('扫码错误: $e');
}
}
网友评论