使用Image.network从互联网上无法显示图像

问题描述 投票:0回答:4
import 'package:flutter/material.dart';
import 'package:flutter/src/widgets/basic.dart';

void main() {
  runApp(
    MaterialApp(
      home: Scaffold(
        backgroundColor: Colors.blueGrey,
        appBar: AppBar(
          backgroundColor: Colors.blueGrey[900],
          title: Text("I AM RICH"),
        ),
        body: Center(
          child:Image(
            image: NetworkImage('https://images.pexels.com/photos/462118/pexels-photo-462118.jpeg?auto=compress&cs=tinysrgb&dpr=1&w=500'),
          ),
      ),
    ),
     debugShowCheckedModeBanner: false,
    )
  );
}
flutter assets
4个回答
3
投票

在调试模式下,默认启用服务扩展和多权限(在flutter中)

因为你是在发布模式下,你必须在androidmanifest.xml中手动添加互联网权限(就像你在本地开发中添加一样)。

导航到android-> app-> src-> main-> AndroidManifest.xml,并在应用程序范围外添加这一行。

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

1
投票

你应该使用 network 构造函数。请将其改为

Image(
  image: NetworkImage('https://images.pexels.com/photos/462118/pexels-photo-462118.jpeg?auto=compress&cs=tinysrgb&dpr=1&w=500'),
)

改为this:

Image.network('https://images.pexels.com/photos/462118/pexels-photo-462118.jpeg?auto=compress&cs=tinysrgb&dpr=1&w=500')

0
投票

你可以在 Container 在你 body 像这样,把你的 ContainerCenter 小工具

Container(
            height: 90,
            width: 90,
            decoration: BoxDecoration(   
              image: DecorationImage(
                image: NetworkImage("https://images.pexels.com/photos/462118/pexels-photo-462118.jpeg?auto=compress&cs=tinysrgb&dpr=1&w=500"),
                //whatever image you can put here
                fit: BoxFit.cover,
              ),
           ),
        ),

0
投票

我觉得你的代码很好,要解决这个问题就关闭android studio & Emulator再重新启动。它为我工作,它一直发生在我身上,我想它是因为它无法加载照片。

CircleAvatar(
    backgroundImage: NetworkImage('https://www.pinclipart.com/picdir/big/218-2189254_free-online-avatars-kid-characters-family-vector-for.png'));

0
投票

首先检查你的模拟器是否能够访问互联网。尝试在模拟器内的谷歌浏览器中加载任何网址。如果没有,添加DNS地址8.8.8.8.8到你的网络设置。


0
投票

即使我也面临同样的问题,直到我检查我的设备没有连接到互联网,后来打开它,NetworkImage从通过的URL字符串加载图像

© www.soinside.com 2019 - 2024. All rights reserved.