Appearance
使用Treeshake避免不必要的资源打包进入Flutter
无论是Web还是Android,Flutter都提供了Treeshake功能,可以避免不必要的资源打包进入Flutter。Tree Shaking是一个编译优化技术,它会在打包过程中分析代码并移除未使用的代码和资源,从而减小应用程序的体积和启动时间。
在Flutter中,Dart 编译器采用 Tree Shaking 来删除构建过程中任何未使用的代码、库或类,从而生成更紧凑、更高效的最终包。 Tree Shaking 可确保应用程序中仅包含代码的必要部分,从而减小其大小并提高性能。
手动进行
默认情况下,打包的过程中Flutter已经默认自带Treeshake功能,无需手动进行。 比如编译的时候,Flutter会自动删除没有使用的图标。但有时候我们需要手动进行,比如核验我们引入的图片中是否有较大的文件。
yml
dev_dependencies:
delete_un_used_assets: [latest-version]
使用上面的依赖,自动删除未使用的文件。运行底部的命令行后,它将在assets项目的文件夹中搜索项目中任何未使用的文件,然后将从该文件夹中删除该文件并移动到deleted_assets项目根目录中的新文件夹,并跟踪已删除的文件。
在项目根目录中,运行以下命令:
bash
flutter pub run delete_un_used_assets:start <assetsPath>
可用的参数是assetsPath
- assetsPath:如果要指定assets文件夹的路径,可以通过传递路径来实现,但默认值为assets.
或者你可以在pub.dev
中寻找其他的删除未使用的资源的工具。