.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 시켜주면 된다.
'프로젝트' 카테고리의 다른 글
Flutter web 구글 directions API로 도착 소요 시간 가져오기 (2) | 2025.04.24 |
---|---|
FastAPI 시작하고 프로젝트에 연동하기 (0) | 2025.04.23 |
GCP 프로젝트 생성, SDK 설치 (0) | 2025.04.22 |
Flutter Map에 장소 마커, 경로 표시 (1) | 2025.04.22 |
Flutter Map으로 여행 반경 설정 (2) | 2025.04.17 |