You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter图片资源服务捕获异常:无法加载指定Asset图片求助

Flutter热重载后无法加载图片资源"images/dice1.png"的解决方案

执行Flutter热重载并同步文件到Pixel 6设备后,出现图片资源加载异常,提示无法找到Asset:images/dice1.png,异常信息为Asset not found,调用栈如下:

#0      PlatformAssetBundle.loadBuffer (package:flutter/src/services/asset_bundle.dart:368:7)
<asynchronous suspension>
#1      AssetBundleImageProvider._loadAsync (package:flutter/src/painting/image_provider.dart:757:16)
<asynchronous suspension>
#2      MultiFrameImageStreamCompleter._handleCodecReady (package:flutter/src/painting/image_stream.dart:1013:3)
<asynchronous suspension>

图片提供者:AssetImage(bundle: null, name: "images/dice1.png")
图片Key:AssetBundleImageKey(bundle: PlatformAssetBundle#e521c(), name: "images/dice1.png", scale: 1.0)

排查与解决步骤

  • 验证pubspec.yaml资源配置
    确保flutter节点下正确声明了图片资源,格式如下(注意缩进必须正确):

    flutter:
      assets:
        - images/
        # 或单独指定该图片
        - images/dice1.png
    

    检查assets是否在flutter:下缩进2个空格,每条资源前的-后必须有空格。

  • 确认文件路径与文件名
    检查项目根目录下是否存在images文件夹,且dice1.png确实在该目录中。注意文件名大小写必须和代码中的完全一致(Android/iOS平台对文件名大小写敏感)。

  • 重启应用而非仅热重载
    新增或修改资源文件后,热重载无法更新资源缓存,此时需要执行**热重启(终端按R键)**或完全重启应用,确保资源被重新打包加载。

  • 清理缓存并重建项目
    执行以下命令清理缓存后重新构建,解决资源打包异常:

    flutter clean
    flutter pub get
    flutter run
    
  • 检查代码中路径写法
    确认代码中AssetImage的路径为images/dice1.png,避免多余斜杠(如./images/dice1.png)或拼写错误(如images/Dice1.png)。

内容的提问来源于stack exchange,提问作者md mahfuzul hoque

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 01:22:36