Android

Github - 안드로이드에서 API key 숨기기

뾰루퉁한 제리 2023. 7. 2. 03:47

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 추가 (나는 열어보니 이미 적혀있었다.)

.gitignore파일 위치와 파일 내부


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 {...} 적으면 된다.

 

참고

https://pangseyoung.tistory.com/entry/Android-GitHub%EC%97%90-API-Key-Hash-%EA%B0%92-%EC%88%A8%EA%B8%B0%EA%B8%B0

 

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