【Flutter】구축 변수 설정

젠, 요즘 유행하는 것 같아서 투고했어요.

개시하다


플루터와 관련해 GMO 페파보의 블로그에 공개된 플루터하존 자료https://tech.pepabo.com/2020/05/27/flutter-hands-on/에서 공부하던 중 글에서 조금 언급됐던'API의 영패를 구축 변수로 설정했다'는 점을 몰라서 조사했다.

너는 왜 그걸 하고 싶니?


이 팔찌에서 API의 토큰이 성과물에서 읽히지 않도록 하고 싶어서요.
다른 사용 방법으로는 DB 연결용 id, 비밀번호, 로컬, 공식 환경 전환 등이 있습니까?

전제 조건


OS :MacOS
IDE:AndroidStudio
Fluter 버전: 1.2.4

결론


flutter를 실행할 때 옵션--dart-define=NAME=value을 통해 값을 지정합니다, String.fromEnviroment()로 읽으면 OK!
Fluter String.fromEnviroment의 문서는 여기.입니다.

예제


[sample.dart]

// ビルド変数を読み込めなかった場合は、defaultValueが適用される
const token = String.fromEnviroment("ACCESS_TOKEN", defaultValue="hoge")
// 注意:constでないとビルド変数を読み込まない(コンパイル時定数)
$ flutter run --dart-define=ACCESS_TOKEN=dummy_token

좀 더 간단하게 하면 안 돼요?【AndroidStudio】


매번 지령선으로 수치를 치는 것은 번거롭기 때문에 Run/Debug 단추로 실행할 때도 수치를 지정해야 한다.
메뉴 막대[Run]][Edit Configuration...]를 클릭하고 매개변수를 Additional Arguments에 지정하면 Run/Debug 버튼에서 빌드할 때 빌드 변수가 전달됩니다.
Configurations
(솔직히 안드로이드 스튜디오는 잘 못 쓰는데 더 좋은 방법이 있으면 알려주세요.)

참고 문헌


Fluter Hazon을 회사 내에서 진행했기 때문에 자료를 공개합니다.
Flutter를 실행할 때 명령줄 옵션을 통해 변수를 전달하고 응용 프로그램의 행동을 전환합니다
Dart: String.fromEnvironment()의 값을 가져올 수 없습니다. - Qita
Dart 변수 정의 시 코스메틱 static/final/const 및 const concetructor

좋은 웹페이지 즐겨찾기