在原生Android和iOS中,Android Studio和Xcode都可以将原生中一些无用的资源和引用,代码等识别出来,然后可以清理,减少包体积,那Flutter中怎么清理呢?以前原生中的方法貌似不起作用了~
一、引用
在StackOverflow中搜到这篇回答# How to find unused flutter classes in Android Studio or Visual Studio Code
它可以分为两个部分:移除未使用的引用和移除为使用的代码和dart文件。
二、Remove unused import
Android Studio
点Run按钮后,会自动整理你的import引用,删除unused import。
三、Remove unused code
这里需要用到Dart库: dart_code_metrics
详情如下:Dart Code Metrics Details
3.1 安装
$ dart pub add --dev dart_code_metrics
# or for a Flutter package
$ flutter pub add --dev dart_code_metrics
或者
pubspec.yaml
environment:
sdk: '>=2.18.0 <3.0.0'
dev_dependencies:
dart_code_metrics: ^5.5.0
3.2 命令行运行分析
可以使用flutter命令运行分析代码:
flutter pub run dart_code_metrics:metrics <command> lib
command:
analyze:
flutter pub run dart_code_metrics:metrics analyze lib
报告代码指标、规则和反模式违规。check-unnecessary-nullable:
flutter pub run dart_code_metrics:metrics check-unnecessary-nullable lib
检查不必要的可空参数。check-unused-files:
flutter pub run dart_code_metrics:metrics check-unused-files lib
检查未使用的 *.dart 文件。check-unused-l10n:
flutter pub run dart_code_metrics:metrics check-unused-l10n lib
检查 *.dart 文件中未使用的本地化。check-unused-code:
flutter pub run dart_code_metrics:metrics check-unused-code lib
检查 *.dart 文件中未使用的代码。
3.3 命令行运行分析输出设置
命令行分析完后可以设置输出的形式:
- Console
- GitHub
- Checkstyle
- Codeclimate
- HTML
- JSON
类似:
flutter pub run dart_code_metrics:metrics check-unused-files lib --reporter=console
flutter pub run dart_code_metrics:metrics check-unused-files lib --reporter=json
flutter pub run dart_code_metrics:metrics check-unused-files lib --reporter=html