You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用flutter_barcode_scanner遇MissingPluginException问题求助

解决flutter_barcode_scanner的MissingPluginException问题

针对你遇到的MissingPluginException(No implementation found for method scanBarcode on channel flutter_barcode_scanner)错误,尝试以下步骤排查:

  • 检查插件与Flutter版本兼容性
    打开pubspec.yaml查看当前使用的flutter_barcode_scanner版本,确认该版本适配你当前的Flutter SDK版本。如果版本不匹配,升级或降级插件到兼容版本后执行flutter pub get。

  • 彻底重启运行环境
    关闭所有Flutter终端窗口、模拟器/真机,重新打开终端执行flutter pub get,再重新启动项目。热重载/热重启不会刷新插件的原生代码绑定,必须冷启动。

  • 验证原生平台配置

    • Android端:确保android/app/build.gradle中的minSdkVersion≥21,同时在AndroidManifest.xml中添加相机权限:
      <uses-permission android:name="android.permission.CAMERA" />
      
    • iOS端:在Info.plist中添加相机权限描述:
      <key>NSCameraUsageDescription</key>
      <string>需要访问相机进行扫码</string>
      
      进入ios目录执行pod install,确保Podfile中platform :ios版本≥10.0。
  • 修正异步代码写法
    你的扫码函数使用then链式调用,虽然不直接引发MissingPlugin错误,但建议改用await提升代码可读性,同时确保异常捕获更可靠:

    Future<void> scanqrcode() async {
      try {
        final value = await FlutterBarcodeScanner.scanBarcode('#AC22F', 'Cancel', false, ScanMode.QR);
        data = value;
      } catch (e) {
        data = "无法读取二维码";
      }
    }
    
  • 排查平台支持问题
    flutter_barcode_scanner不支持Web平台,如果是在Web环境下使用,需要更换支持Web的扫码插件(如qr_code_scanner)。

内容的提问来源于stack exchange,提问作者Mohammad Yazbeck

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 14:32:21