Github - 안드로이드에서 API key 숨기기
Java 파일 내에서 사용
1. build.gradle(:app)에 다음 코드 추가
Properties properties = new Properties()
properties.load(project.rootProject.file('local.properties').newDataInputStream())
android {
...
buildFeatures {
buildConfig = true
}
defaultConfig {
...
buildConfigField "String", "API_KEY", properties['api_key']
}
...
}
2. local.properties에 다음 코드 추가
api_key = "your_api_key"
3. .gitignore에 local.properties 추가 (나는 열어보니 이미 적혀있었다.)
4. api key 사용할 때(java 파일)
private const val apiKey = BuildConfig.API_KEY
Manifests에서 사용
1. build.gradle(:Project)에 다음 코드 추가
plugins {
...
id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' version '2.0.1' apply false
}
2. build.gradle(:app)에 다음 코드 추가
plugins {
...
id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin'
}
3. local.properties에 다음 코드 추가
API_KEY = "your_api_key"
4. api key 사용할 때(manifests 파일)
<meta-data
android:name="API_NAME"
android:value="${API_KEY}" />
※주의
buildscript {
dependencies {
plugins {
// ...
id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' version '2.0.1' apply false
}
}
}
이렇게 넣으면 오류난다. 아마도 자체적으로 buildscript랑 dependencies가 전제되어있는듯.
그냥 파일에 바로 plugins {...} 적으면 된다.
참고
Android - GitHub에 API Key, Hash 값 숨기기
1. gitignore 파일 수정 자신의 github 레포지토리에 들어가 Android Studio 프로젝트의 gitignore 파일을 수정해주어야 합니다. API 키를 local.properties 안에다가 저장 시킬것 이므로 위와 같이 gitignore에 local.p
pangseyoung.tistory.com
https://developers.google.com/maps/documentation/android-sdk/secrets-gradle-plugin?hl=ko
Secrets Gradle 플러그인 | Android용 Maps SDK | Google for Developers
의견 보내기 Secrets Gradle 플러그인 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 버전 제어 시스템에 API 키를 체크인하지 않는 것이 좋습니다. 대신 프로젝
developers.google.com