はじめに
外部に公開したくないAPIキーなどの情報はgit管理の対象から外し、.envファイルに記載した環境変数として使用したいです。
環境
Flutter 3.22.1
パッケージのインストール
flutter_dotenvのインストールします。
flutter pub add flutter_dotenv
envファイルの準備
サンプルとして次のようにSAMPLE_KEYを記載した.envファイルを準備します。
.env
SAMPLE_KEY='hello_test_key'
.envファイルをgit管理の対象から外す
.gitignore
.env
pubspec.yamlの修正
envファイルの記述を追加します。
pubspec.yaml
~~~
flutter:
~~~
assets:
- .env
~~~
envファイルの読み込み
envファイルから環境変数を読み込みその値をログに出力します。
main.dart
import 'package:flutter/material.dart';
import 'package:flutter_dotenv/flutter_dotenv.dart';
void main() async {
// .envファイルの読み込み
await dotenv.load(fileName: ".env");
// 環境変数の値をログに出力する
print('SAMPLE_KEY: ${dotenv.env['SAMPLE_KEY']}');
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: const Text('Flutter Dotenv Example'),
),
body: const Center(
child: Text('Hello world'),
),
),
);
}
}
実行結果
プロジェクトを起動すると print()
で取得した環境変数が出力されている事を確認。
I/flutter ~~: SAMPLE_KEY: hello_test_key
参考