web-dev-qa-db-fra.com

Erreur d'activation Flutter: EXCEPTION CAUGHT BY IMAGE RESOURCE SERVICE

flutter ne trouve pas mes images, que puis-je faire de mal?

J'ai eu l'erreur sur le débogueur:

Lancement de lib/main.Dart sur XT1097 en mode débogage ... Build build/app/outputs/apk/debug/app-debug.apk.

I/flutter (  876): ══╡ EXCEPTION CAUGHT BY IMAGE RESOURCE SERVICE ╞══
I/flutter (  876): Unable to load asset: assets/images/user/background.jpg
I/flutter (  876): "assets/images/user/background.jpg", scale: 1.0)

Mon pubspec.yml:

environment:
    sdk: ">=2.0.0-dev.68.0 <3.0.0"

dependencies:
    sqflite: any
    path_provider: '>=0.3.0'
    charts_flutter: any
    cupertino_icons: ^0.1.2
    material_search: ^0.2.8
    dio: ^1.0.3
    flutter:
        sdk: flutter

dev_dependencies:
    flutter_test:
        sdk: flutter


flutter:
    uses-material-design: true
    assets:
        - assets/images/

et le code:

                new UserAccountsDrawerHeader(
                    decoration : BoxDecoration(
                        image: new DecorationImage(
                            image: AssetImage('assets/images/user/background.jpg'),
                            fit: BoxFit.cover
                        ),
                        color: Colors.blue,
                    ),
                    accountName: new Text('Diego Botelho'),
                    accountEmail: new Text('[email protected]'),
                    currentAccountPicture: new GestureDetector(
                        onTap: () => print('Toque na imagem'),
                        child: new CircleAvatar(
                            backgroundImage: AssetImage('assets/images/user/avatar.png'),
                        )
                    )
                ),
5
Diego Botelho

Pour autant que je sache actuellement, seuls les fichiers placés directement dans le répertoire enregistré sont ajoutés aux actifs.

Cela devrait fonctionner:

flutter:
  uses-material-design: true
  assets:
   - assets/images/
   - assets/images/user/
8

J'ai eu la même erreur. Dans mon cas, c'est parce que l'émulateur du téléphone que j'utilise n'a pas accès à Internet.

Exécutez l'application sur un appareil mobile physique et cela a fonctionné immédiatement.

Solution connectez l'émulateur à Internet.

1
Natalia Peña

J'ai rencontré cette erreur lorsque je passais accidentellement un paramètre numérique en tant qu'URL pour obtenir l'image du serveur.

leading: CircleAvatar(
        backgroundImage: NetworkImage(imageUrl),
      ),

// imageUrl doit être une URL d'image correcte, pas un autre type.

0
Avijit Nagare

Voilà comment cela s'est résolu pour moi.

Auparavant, j'utilisais les chemins exacts vers les images comme suggéré

 assets:
 - assets/logo_linked_in.jpg
 - assets/logo_medium.png
 - assets/logo_stackoverflow.png
 - assets/myself.jpg
 - assets/sparta.jpg
 - assets/fox.png

Ensuite, j'ai essayé uniquement le nom du répertoire parent, qui utilisait simplement:

assets:
 - assets/

Voila! Ça a marché comme sur des roulettes!

J'espère que ça aidera quelqu'un.

P.S. - Pour les débutants comme moi:

Assurez-vous que vous avez correctement mis en retrait le pubspec.yaml car c'est très important pour la construction.

0
sud007

Dans mon cas, j'ai deux espaces entre _ et les actifs, c'est pourquoi cette exception à venir

-  assets/images/logo.png
-  assets/images/bg.jpg

Maintenant, je fixe par

assets:
- assets/images/logo.png
- assets/images/bg.jpg
0
Arun Prajapati

Dans mon cas, pendant que j'utilisais un chemin relatif comme ça Image.asset('./../images/welcome.png'), ça ne marche pas.

Mais si j'utilise un chemin absolu comme ça Image.asset('images/welcome.png'), ça marche!

0
Robin

Auparavant, je définissais les chemins des images comme suit

"assets/images/SU.jpg"

alors j'ai eu cette erreur donc je l'ai changé comme suit

"images/SU.jpg"

alors ça a marché !!

0

Dans mon cas, je dois corriger les alignements entre mes lignes assets et ses-material-design dans pubspec.yaml.

like this

0
Eliod