void main() {
assert(() {
// Debug-only code here
debugPrint('Debugging information');
return true;
}());
runApp(MyApp());
}
В режиме выпуска оператор утверждения и связанный с ним код будут удалены, что приведет к эффективному удалению тегов отладки из рабочей сборки.
Метод 2: использование флагов компилятора.
Другой подход — использовать флаги компилятора для удаления тегов отладки во время процесса сборки. Этот метод хорошо работает, если вы хотите автоматизировать удаление тегов отладки в сборках выпуска.
Шаг 1. Откройте файл «flutter.yaml» в корневом каталоге вашего проекта.
Шаг 2. Добавьте следующие строки в раздел «futter»:
flutter:
build_mode: release
dart_defines:
- "flutter_defines.dart.vm.product=true"
Шаг 3. Создайте новый файл с именем «flutter_defines.dart» в каталоге lib.
Шаг 4. Добавьте следующий код в «flutter_defines.dart»:
/// flutter_defines.dart
const bool kDebugMode = false;
Установив для kDebugModeзначение false
if (kDebugMode) {
// Debug-only code here
debugPrint('Debugging information');
}
Метод 3. Использование пользовательской переменной среды
Этот метод включает в себя определение пользовательской переменной среды в вашем проекте Flutter и использование ее для условного удаления тегов отладки.
Шаг 1. Откройте файл «flutter.yaml» в корневом каталоге вашего проекта.
Шаг 2. Добавьте следующие строки в раздел «futter»:
flutter:
build_mode: release
flavors:
production:
dartDefines:
FLAVOR: production
Шаг 3. Создайте новый файл с именем «constants.dart» в каталоге lib.
Шаг 4. Добавьте следующий код в «constants.dart»:
/// constants.dart
const bool kReleaseMode = bool.fromEnvironment('FLAVOR') == 'production';
Шаг 5. Измените код, чтобы условно удалить теги отладки:
if (kReleaseMode) {
// Debug-only code here
debugPrint('Debugging information');
}
Помните, что крайне важно тщательно протестировать приложение после удаления тегов отладки, чтобы убедиться, что оно работает должным образом в сборке выпуска.