【问题标题】:Flutter assets image not find找不到颤振资产图像
【发布时间】:2020-08-07 17:27:47
【问题描述】:

我使用 Visual Studio 代码和 Andriod Studio IDE 以及不同的 AVD 管理器,但是当我使用 Image 资产运行应用程序时出现错误 No file or variant found for assets: assets/puffin.jpeg。

简单示例: main.dart

import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    var title = 'Web Images';

    return MaterialApp(
      title: title,
      home: Scaffold(
        appBar: AppBar(
          title: Text(title),
        ),
        body: Container(
          alignment: Alignment.center,
          child: Image.asset(
            "assets/puffin.jpeg",
            width: 280.0,
          ),
        )
      ),
    );
  }
}

pubspec.yaml

name: flutter_app_test
description: A new Flutter application.
publish_to: 'none' # Remove this line if you wish to publish to pub.dev
version: 1.0.0+1

environment:
  sdk: ">=2.7.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter
  cupertino_icons: ^0.1.3

dev_dependencies:
  flutter_test:
    sdk: flutter

flutter:
  uses-material-design: true

  assets:
    - assets/puffin.jpeg

运行颤振医生

[√] Flutter (Channel stable, v1.17.5, on Microsoft Windows [Version 10.0.18363.959], locale en-US)

[√] Android toolchain - develop for Android devices (Android SDK version 30.0.1)
[√] Android Studio (version 4.0)
[√] VS Code (version 1.47.3)
[√] Connected device (1 available)

• No issues found!

【问题讨论】:

  • 您是否已从冷态加载应用程序?
  • 如果我理解正确什么是冷启动。 (冷启动在android中也称为启动屏幕、启动屏幕或冷启动)否。
  • 要添加资产,您不能进行热重载。
  • 停止应用并重新启动应用。热重载不起作用。
  • 在没有热重载的情况下运行应用程序。

标签: android flutter dart


【解决方案1】:

首先确保你的 assets 文件夹位于项目的根目录下,与 lib 文件夹处于同一级别,如下所示:

my_project
-android
-assets //your image goes here, puffin.jpeg
-ios
-lib
-pubspec.yaml
-etc...

如果您的资产文件夹位于另一个文件夹中,IDE 将不会加载其中的内容。另外,如果你不先保存,有时 vs code 不会加载 pubspec 文件中的更改,因此,请确保在 IDE 终端中运行“flutter pub get”之前保存项目。

【讨论】:

  • 相同的项目结构。
  • 你能发布运行“flutter pub get”的输出吗?
  • 我在 puspec.yaml 中收到一条消息。资产 assets/puffin.jpeg 不存在。尝试创建文件或修复 file.dart(asset_does_not_exist) 的路径。但是当我做 pub get 时不会出错。
  • 试试这个,检查你的缩进,“assets:”行需要两个空格(一个制表符),“-assets/puffin.jpeg”行需要四个(两个制表符)。检查后,执行“flutter clean”并运行应用程序。
【解决方案2】:

我修复了一个错误,我删除文件夹 .dart_tool 并重新运行应用程序,错误消失了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-07-19
    • 2021-03-18
    • 1970-01-01
    • 1970-01-01
    • 2021-11-24
    • 2022-08-10
    • 2021-05-26
    • 1970-01-01
    相关资源
    最近更新 更多