프로젝트
Flutter dotenv 패키지 관련 오류
TMJeti
2025. 4. 22. 16:47
.env 파일은 API key나 프로젝트 아이디 등 사용자 정보, 민감한 정보를 넣어놓고 그 파일을 필요한 코드단에서 접근하고 읽어내어 안의 값을 꺼내와서 전역변수 처럼 사용할 수 있는 파일이다.
이 파일을 읽을수 있도록 해주는 패키지가 dotenv 이다.
위와 같이 instance of 'NotInitializedError'가 떴는데 dotenv 초기화 안 해서 생기는 문제란다.
또 FlutterWeb 에서는 .env 파일이 에셋에 등록되어 있어야 정상 로딩이 가능하다.
정리
- .env 파일을 assets 폴더에 넣는다.
- pubspec.yaml에 등록
flutter:
assets:
- assets/.env - await dotenv.load(fileName: 'assets/.env');
Future<void> main() async {WidgetsFlutterBinding.ensureInitialized();await Firebase.initializeApp(options: DefaultFirebaseOptions.currentPlatform,);await dotenv.load(fileName: "assets/.env"); // .env 파일 로드
await testGPTConnection(); // ✅ GPT 연결 테스트 실행runApp(MyApp());}
runApp(MyApp()); 위에 load 시켜주면 된다.