参考:
https://flutter.cn/docs/development/ui/assets-and-images
如果要包含一个目录下的所有 assets,需要在目录名称的结尾加上 /:
flutter:
assets:
- directory/
- directory/subdirectory/
提示
仅包含当前目录下的所有文件,以及子目录下(与主目录中的文件)的同名文件(请参阅 Asset 变体)。如果想要添加子文件夹中的文件,请为每个目录创建一个条目。
比如资源目录的结构为:
- directory/a.txt
- directory/sub1/a.txt
- directory/sub1/b.txt
在pubspec.yaml文件中配置为:
flutter:
assets:
- directory/
则在打包时,子目录sub1下的a.txt因为和根目录的a.txt重名,会被拷贝,
但b.txt因为在根目录下没有同名文件,则不会被包含。
上面的处理主要是为了处理不同分辨率的图片而设计的。
iOS打包后bundle的位置:
bundle在App.framework中,不在应用的根目录下。
Runner.app/Frameworks/App.framework/flutter_assets
可以打包后到包中检查子目录下的文件是否被包含到了应用的包中。