juliuscanute / qr_code_scanner

QR Code Scanner for Flutter
BSD 2-Clause "Simplified" License
999 stars 759 forks source link

[BUG] Error: The argument type 'String?' can't be assigned to the parameter type 'String' because 'String?' #595

Open tonkarhu opened 2 years ago

tonkarhu commented 2 years ago

I'm getting this error while building my app using

QRViewController

      /C:/flutter_windows_2.10.5-stable/flutter/.pub-cache/hosted/pub.dartlang.org/qr_code_scanner-1.0.1/lib/src/qr_code_scanner.dart:190:39: Error: The argument type 'String?' can't be assigned to the parameter type 'String' because 'String?' is nullable and 'String' isn't.
      [   +1 ms]               final barcode = Barcode(code, format, rawBytes);
      [        ]                                       ^
      [+6625 ms] Exception: Gradle task assembleDebug failed with exit code 1
      [   +5 ms] "flutter run" took 17 412ms.
      [   +4 ms]
       #0      throwToolExit (package:flutter_tools/src/base/common.dart:10:3)
       #1      RunCommand.runCommand (package:flutter_tools/src/commands/run.dart:713:9)
       <asynchronous suspension>
       #2      FlutterCommand.run.<anonymous closure> (package:flutter_tools/src/runner/flutter_command.dart:1209:27)
       <asynchronous suspension>
       #3      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
       <asynchronous suspension>
       #4      CommandRunner.runCommand (package:args/command_runner.dart:209:13)
       <asynchronous suspension>
       #5      FlutterCommandRunner.runCommand.<anonymous closure> (package:flutter_tools/src/runner/flutter_command_runner.dart:281:9)
       <asynchronous suspension>
       #6      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
       <asynchronous suspension>
       #7      FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:229:5)
       <asynchronous suspension>
       #8      run.<anonymous closure>.<anonymous closure> (package:flutter_tools/runner.dart:62:9)
       <asynchronous suspension>
       #9      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
        <asynchronous suspension>
       #10     main (package:flutter_tools/executable.dart:91:3)
        <asynchronous suspension>

Device:

Flutter information ❯ flutter doctor -v

[√] Flutter (Channel stable, 3.3.2, on Microsoft Windows [Version 10.0.22000.978], locale fi-FI) • Flutter version 3.3.2 on channel stable at C:\flutter_windows_2.10.5-stable\flutter • Upstream repository https://github.com/flutter/flutter.git • Framework revision e3c29ec00c (6 days ago), 2022-09-14 08:46:55 -0500 • Engine revision a4ff2c53d8 • Dart version 2.18.1 • DevTools version 2.15.0

[√] Android toolchain - develop for Android devices (Android SDK version 32.1.0-rc1) • Android SDK at C:\Users\toni.karhu\AppData\Local\Android\sdk • Platform android-33, build-tools 32.1.0-rc1 • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java • Java version OpenJDK Runtime Environment (build 11.0.12+7-b1504.28-7817840) • All Android licenses accepted.

[√] Chrome - develop for the web • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop for Windows (Visual Studio Build Tools 2019 16.11.5) • Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools • Visual Studio Build Tools 2019 version 16.11.31729.503 • Windows 10 SDK version 10.0.19041.0

[√] Android Studio (version 2021.2) • Android Studio at C:\Program Files\Android\Android Studio • Flutter plugin can be installed from: https://plugins.jetbrains.com/plugin/9212-flutter • Dart plugin can be installed from: https://plugins.jetbrains.com/plugin/6351-dart • Java version OpenJDK Runtime Environment (build 11.0.12+7-b1504.28-7817840)

[√] VS Code (version 1.71.1) • VS Code at C:\Users\toni.karhu\AppData\Local\Programs\Microsoft VS Code • Flutter extension version 3.48.0

[√] Connected device (4 available) • SM G970F (mobile) • RF8M71STC3E • android-arm64 • Android 12 (API 31) • Windows (desktop) • windows • windows-x64 • Microsoft Windows [Version 10.0.22000.978] • Chrome (web) • chrome • web-javascript • Google Chrome 104.0.5112.81 • Edge (web) • edge • web-javascript • Microsoft Edge 105.0.1343.33

[√] HTTP Host Availability • All required HTTP hosts are available

Additional context I can get rid of this error if I change the type for the String? to strict String. final code = args['code'] as String?; -> final code = args['code'] as String;

I'm not sure what is the proper way to fix this issue.