You*_*Ken 7 git android google-maps ios flutter
要启用 Google Maps SDK,您必须使用 API 密钥更新: android/app/src/main/AndroidManifest.xml(用于 android)和 ios/Runner/AppDelegate.m(用于 ios)。
我不想将我的 API 密钥签入源代码管理。
有没有办法用.env
文件隐藏这个键.gitignore
?
这里的最佳实践是什么?
Kus*_*iya 14
您可以将 api 密钥设置为只能在本地机器上构建期间读取的环境变量。创建一个环境变量 MAPS_API_KEY="your-key-here",然后将这些行添加到 [your-project]/android/app/build.gradle
defaultConfig {
manifestPlaceholders = [mapsApiKey: "$System.env.MAPS_API_KEY"]
}
Run Code Online (Sandbox Code Playgroud)
然后您可以使用 mapsApiKeys 在 AndroidManifest.xml 中传递您的 api 密钥
<meta-data android:name="com.google.android.geo.API_KEY"
android:value="${mapsApiKey}"/>
Run Code Online (Sandbox Code Playgroud)
对于 ios,将这些添加到 AppDelegate.m
NSString* mapsApiKey = [[NSProcessInfo processInfo] environment[@"MAPS_API_KEY"];
[GMSServices provideAPIKey:mapsApiKey];
Run Code Online (Sandbox Code Playgroud)
小智 1
您可以将密钥保存在单独的文件中,然后将该文件添加到.gitignore
. 然后,如果您将文件推送到存储库,该文件将被忽略。
如果您有一位新同事需要开始处理同一个项目,您将需要与他们共享此文件。从存储库中签出项目后,他们需要将该文件放置在与原来相同的目录中。