ByteNoteByteNote

字节笔记本

2026年2月19日

Flutter 环境变量管理:flutter_dotenv 包使用指南

当 Flutter 应用需要管理不同环境的配置(开发、测试、生产),如何优雅地处理环境变量?flutter_dotenv 包提供了完美的解决方案。

flutter_dotenv 简介

flutter_dotenv 是一个 Flutter 环境变量管理包,支持从 .env 文件加载环境变量。通过该包,开发者可以将敏感信息(如 API 密钥、数据库连接字符串)与代码分离,实现配置的灵活管理。

核心定位:Flutter 环境变量管理工具

核心功能

  • .env 文件支持:从 .env 文件加载环境变量
  • 多环境配置:支持开发、测试、生产等不同环境
  • 类型安全:提供类型安全的环境变量访问
  • 易于集成:简单的 API 设计,快速集成到项目

安装方法

pubspec.yaml 中添加依赖:

yaml
dependencies:
  flutter_dotenv: ^5.0.2

然后运行:

bash
flutter pub get

使用示例

1. 创建 .env 文件

在项目根目录创建 .env 文件:

text
API_URL=https://api.example.com
API_KEY=your_api_key_here
DEBUG_MODE=true

2. 加载环境变量

dart
import 'package:flutter_dotenv/flutter_dotenv.dart';

Future main() async {
  await dotenv.load(fileName: ".env");
  runApp(MyApp());
}

3. 访问环境变量

dart
import 'package:flutter_dotenv/flutter_dotenv.dart';

String apiUrl = dotenv.env['API_URL']!;
String apiKey = dotenv.env['API_KEY']!;
bool debugMode = dotenv.env['DEBUG_MODE'] == 'true';

4. 设置默认值

dart
String apiUrl = dotenv.env['API_URL'] ?? 'https://default.api.com';

多环境配置

开发环境 .env.development

text
API_URL=https://dev-api.example.com
DEBUG_MODE=true

生产环境 .env.production

text
API_URL=https://api.example.com
DEBUG_MODE=false

根据环境加载

dart
const String env = String.fromEnvironment('ENV', defaultValue: 'development');
await dotenv.load(fileName: ".env.$env");

注意事项

  • 不要将 .env 文件提交到版本控制,添加到 .gitignore
  • 生产环境变量应在 CI/CD 流程中注入
  • 敏感信息不要硬编码在代码中

资源链接

总结

flutter_dotenv 是 Flutter 生态中环境变量管理的首选方案,其简洁的 API 和灵活的配置方式,使其成为 Flutter 项目环境管理的必备工具。

分享: