актив assets / appimage / test.png не существует предупреждение в pubspe c .yaml - PullRequest
0 голосов
/ 09 января 2020

Пожалуйста, найдите следующий код main.dart:

class MyHomePage extends StatelessWidget {
   MyHomePage({Key key, this.title}) : super(key: key); 
   final String title; 

   @override 
   Widget build(BuildContext context) {
      return Scaffold( 
         appBar: AppBar( title: Text(this.title), ), 
         body: Center( child: Image.asset("assets/smiley.png")),
      ); 
   }
}

pubspe c .yaml

name: product_app
description: A new Flutter project.

version: 1.0.0+1

environment:
  sdk: ">=2.1.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter

  cupertino_icons: ^0.1.2

dev_dependencies:
  flutter_test:
    sdk: flutter

flutter:

  uses-material-design: true

  assets:
    - assets/appimages/floppy.png
    - assets/appimages/iphone.png
    - assets/appimages/laptop.png
    - assets/appimages/pendrive.png
    - assets/appimages/pixel.png
    - assets/appimages/tablet.png

Перед выполнением ; В активе assets / appimage / test.png не существует предупреждения в pubspe c .yaml После выполнения приведенного ниже кода наступает исключение

══╡ EXCEPTION CAUGHT BY IMAGE RESOURCE SERVICE ╞══
I/flutter ( 8653): The following assertion was thrown while resolving an image:
    I/flutter ( 8653): Unable to load asset: AssetManifest.json
    I/flutter ( 8653): When the exception was thrown, this was the stack:
    I/flutter ( 8653): #0      PlatformAssetBundle.load (package:flutter/src/services/asset_bundle.dart:221:7)
    I/flutter ( 8653): <asynchronous suspension>
    I/flutter ( 8653): #1      AssetBundle.loadString (package:flutter/src/services/asset_bundle.dart:67:33)
    I/flutter ( 8653): #2      CachingAssetBundle.loadString (package:flutter/src/services/asset_bundle.dart:163:18)
    I/flutter ( 8653): #3      CachingAssetBundle.loadStructuredData (package:flutter/src/services/asset_bundle.dart:184:5)
    I/flutter ( 8653): #4      AssetImage.obtainKey (package:flutter/src/painting/image_resolution.dart:174:18)
    I/flutter ( 8653): #5      ImageProvider.resolve.<anonymous closure> (package:flutter/src/painting/image_provider.dart:318:15)
    I/flutter ( 8653): #9      ImageProvider.resolve (package:flutter/src/painting/image_provider.dart:315:16)
    I/flutter ( 8653): #10     _ImageState._resolveImage (package:flutter/src/widgets/image.dart:1010:20)
    I/flutter ( 8653): #11     _ImageState.didChangeDependencies (package:flutter/src/widgets/image.dart:967:5)
    I/flutter ( 8653): #12     StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4376:12)
    I/flutter ( 8653): #13     ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
    I/flutter ( 8653): #14     Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)

1 Ответ

0 голосов
/ 09 января 2020

И вы можете просто определить в вашем pubspec.yaml файле, как показано ниже. Не нужно определять все изображения в вашем .yaml file

assets:
- assets/appimages/    (it will include all images in your appimages folder)

**

class MyHomePage extends StatelessWidget {
   MyHomePage({Key key, this.title}) : super(key: key); 
   final String title; 

   @override 
   Widget build(BuildContext context) {
      return Scaffold( 
         appBar: AppBar( title: Text(this.title), ), 
         body: Center( child: Image.asset("assets/appimages/iphone.png")),
      ); 
   }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...