首页 > 解决方案 > 使用 device_preview 包在我的颤振应用程序中引发错误

问题描述

我想使用device_preview包,这样我就可以在各种设备上预览我的颤振应用程序,但无论何时。

我使用device_preview包,它给我带来了一些错误。有谁知道我为什么会收到这个错误?

这是我的代码。

import 'package:book_a_ride/screens/landing_screen/landing_screen.dart';
import 'package:book_a_ride/screens/verification_screen/verification_screen.dart';
import 'package:book_a_ride/ui/size_config.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:device_preview/device_preview.dart';


void main() => runApp(
  DevicePreview(
    enabled: kReleaseMode,
    builder: (context)=>BookARide(),
  ),
);

class BookARide extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
            return MaterialApp(
              locale: DevicePreview.locale(context),
              builder: DevicePreview.appBuilder,
              home: Scaffold(
                backgroundColor: Colors.white,
                body: SafeArea(
                  child: LandingScreen(),
                ),
              ),
              theme: ThemeData.light(),
              initialRoute: LandingScreen.id,
              routes: {
                LandingScreen.id: (context) => LandingScreen(),
                HomeScreen.id: (context) => HomeScreen(),
                VerificationScreen.id: (context) => VerificationScreen(),
              },
            );
          }
}

name: book_a_ride
description: A new Flutter project.

# The following line prevents the package from being accidentally published to
# pub.dev using `pub publish`. This is preferred for private packages.
publish_to: 'none' # Remove this line if you wish to publish to pub.dev

# The following defines the version and build number for your application.
# A version number is three numbers separated by dots, like 1.2.43
# followed by an optional build number separated by a +.
# Both the version and the builder number may be overridden in flutter
# build by specifying --build-name and --build-number, respectively.
# In Android, build-name is used as versionName while build-number used as versionCode.
# Read more about Android versioning at https://developer.android.com/studio/publish/versioning
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
version: 1.0.0+1

environment:
  sdk: ">=2.7.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter


  # The following adds the Cupertino Icons font to your application.
  # Use with the CupertinoIcons class for iOS style icons.
  cupertino_icons: ^1.0.2
  google_maps_flutter: ^2.0.1
  geolocator: ^7.0.1
  device_preview:
#  url_launcher:
#  //google_maps_flutter:
#  location:
#  geolocator:


dev_dependencies:
  flutter_test:
    sdk: flutter

# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec

# The following section is specific to Flutter.
flutter:

  # The following line ensures that the Material Icons font is
  # included with your application, so that you can use the icons in
  # the material Icons class.
  uses-material-design: true

  # To add assets to your application, add an assets section, like this:
  # assets:
  #   - images/a_dot_burr.jpeg
  #   - images/a_dot_ham.jpeg

  # An image asset can refer to one or more resolution-specific "variants", see
  # https://flutter.dev/assets-and-images/#resolution-aware.

  # For details regarding adding assets from package dependencies, see
  # https://flutter.dev/assets-and-images/#from-packages

  # To add custom fonts to your application, add a fonts section here,
  # in this "flutter" section. Each entry in this list should have a
  # "family" key with the font family name, and a "fonts" key with a
  # list giving the asset and other descriptors for the font. For
  # example:
  # fonts:
  #   - family: Schyler
  #     fonts:
  #       - asset: fonts/Schyler-Regular.ttf
  #       - asset: fonts/Schyler-Italic.ttf
  #         style: italic
  #   - family: Trajan Pro
  #     fonts:
  #       - asset: fonts/TrajanPro.ttf
  #       - asset: fonts/TrajanPro_Bold.ttf
  #         weight: 700
  #
  # For details regarding fonts from package dependencies,
  # see https://flutter.dev/custom-fonts/#from-packages

显示的错误:

/C:/flutter/.pub-cache/hosted/pub.dartlang.org/device_preview-0.4.8/lib/src/device_preview.dart:135:11: Error: No named parameter with the name 'nullOk'.
          nullOk: nullOk,
          ^^^^^^
/C:/flutter/packages/flutter/lib/src/widgets/media_query.dart:818:25: Context: Found this candidate, but the arguments don't match.
  static MediaQueryData of(BuildContext context) {
                        ^^

FAILURE:构建失败并出现异常。

Process 'command 'C:\flutter\bin\flutter.bat'' 以非零退出值 1 结束

标签: flutterdart

解决方案


尝试$ flutter clean然后再次重建应用程序。


推荐阅读