Flutter API 키를 다른 파일로 설정하여 Git으로 올리지 않는 방법

4046 단어 DartGitFlutter

API 키를 Git으로 올리고 싶지 않습니다.



이렇게 말하면 Flutter에서는 어떻게 하면 좋을까요?

이번에는 내가 취한 방법을 소개!

config 파일 만들기



main.dart와 동일한 계층 구조에 config.dart를 만들고 다음과 같이 API 값을 설정합니다.

lib/config.dart
const API_KEY = "aaaaaaaaaaaaaaaaaa";

import하여 사용



이번은 영화의 API( TMDB API )로부터 데이터를 취득하는 부분으로 해 보겠습니다.

dart에서는 import한 파일의 변수를, 특히 아무것도 하지 않고 그대로 사용할 수 있습니다!${API_KEY}의 부분은 config.dart로 설정된 변수입니다.
import '../config.dart';

class TopScreen extends StatelessWidget {

  getMovies() async {
    final url =
        'https://api.themoviedb.org/3/movie/now_playing?api_key=${API_KEY}&language=en-US&page=1';
    try {
      final response = await http.get(url);
      final extractedData = json.decode(response.body)['results'];
      if (extractedData == null) {
        print('nothing to get');
        return;
      }
      return extractedData;
    } catch (error) {
      print(error);
      throw (error);
    }
  }

// 省略

}

.gitignore에 config.dart 추가



이제 소스 제어에 더 이상 포함되지 않습니다.
# ↓これを追加
config.dart

# Miscellaneous
*.class
*.log
*.pyc
*.swp
.DS_Store
.atom/
.buildlog/
.history
.svn/

# IntelliJ related
*.iml
*.ipr
*.iws
.idea/

# The .vscode folder contains launch configuration and tasks you configure in
# VS Code which you may wish to be included in version control, so this line
# is commented out by default.
#.vscode/

# Flutter/Dart/Pub related
**/doc/api/
**/ios/Flutter/.last_build_id
.dart_tool/
.flutter-plugins
.flutter-plugins-dependencies
.packages
.pub-cache/
.pub/
/build/

# Web related
lib/generated_plugin_registrant.dart

# Symbolication related
app.*.symbols

# Obfuscation related
app.*.map.json

# Android Studio will place build artifacts here
/android/app/debug
/android/app/profile
/android/app/release

좋은 웹페이지 즐겨찾기