Closed Ta23ka98 closed 1 year ago
参考記事を見ながらやってみたが、iOSに関してはサンプルがObjective-cのためビルドできなかった。 ・Swiftに関する知識がない ・プロジェクト作成時にSwiftを選択した (Objective-cのファイルが生成されていない)
そのため、別の参考記事を基にAPIキーを管理する方法を模索する。
この参考記事を読んでみたところ、GoogleMapのようなiOS/Androidネイティブのファイル(AppDelegate.swift, AndroidManifest.xml)内のAPIキーを読み込む場合、dart defineが唯一の選択肢になるらしい。
・Code with Andrea:https://codewithandrea.com/articles/flutter-api-keys-dart-define-env-files/
↑の方で一旦諦めた方法がまた使えそう。 現在、iOSとAndroidはそれぞれSwiftとKotlinの言語で設定している。 これをObjective-c、Javaのコードを生成し直せば↑の記事の通りにAPIキーを隠せそう。
・https://stackoverflow.com/questions/52341873/where-is-the-native-language-setting-for-swift-or-objective-c-in-an-existing-flu ・https://qiita.com/unsoluble_sugar/items/9282f1d3ce9ca38daf85#objective-c%E5%81%B4%E3%81%AE%E3%83%8D%E3%82%A4%E3%83%86%E3%82%A3%E3%83%96%E3%82%B3%E3%83%BC%E3%83%89ios ・https://stackoverflow.com/questions/51498356/change-native-programming-language-for-respective-platform-in-vs-code-for-flutte
Code with Andreaの記事をよく読むと、dart-defineでAPIキーを管理する方法が載っていた。 とりあえずこれをやってみる https://medium.com/flutter-community/how-to-setup-dart-define-for-keys-and-secrets-on-android-and-ios-in-flutter-apps-4f28a10c4b6c
hiromさんのプルリクをマージすればいいので、クローズ。
概要
APIキーを保護する方法として、これを含むファイルをGit管理外にした。 しかしこれだと不都合が多いので、再びGit管理することにした。
要件
参考記事
・https://qiita.com/WMs784/items/4b22305e013c44896a4b