[基盤]デバッグモードかを判断する

動作環境: Flutter 2.8.1 Dart 2.15.1
LINEでこのページを共有するTwitterでこのページを共有するこのページをはてなブックマークに追加

アプリを開発していると、リリースには含めないけれどデバッグのときだけ特定の処理を行いたい、といったことがよくあります。
たとえば、実行状態把握のために色を一部変えたり文字を出したい、デバッグ用の機能を追加したい etc...

Flutterでは以下のようにdart.vm.productの状態から実行中のアプリがデバッグモードか、リリースモードであるかを確認することが可能です。

void main() {
  if (bool.fromEnvironment('dart.vm.product')) {
    print('release');
  } else {
    print('debug');
  }
}

*「Run」を押すと実行できます。

例えば、Flutterのプロジェクトであれば以下のようなヘルパーを用意して、各ソースコードから呼び出して使ってみるのもいいかもしれません。

class EnvHelper {
  static bool isDebug() {
    return !const bool.fromEnvironment('dart.vm.product');
  }
}