1. 사용자 인증키 만들기
구글 클라우드 들어가기
https://console.cloud.google.com/
프로젝트 선택 -> 새 프로젝트 -> 프로젝트 이름 기입 -> 만들기
↓
↓
저의 경우 이미 만들어놓은 PracticeGoogleMap으로 진행하겠습니다.
왼쪽 상단의 메뉴 이미지 > API 및 서비스 > 사용자 인증 정보
↓
사용자 인증 정보 만들기
↓
API키
↓
그럼 해당 키가 나옵니다. 지금 부터는 옵션인데 제한 사항을 세팅하는 과정입니다.
제한 사항을 추가안하실 분들은 이 부분은 넘기셔도 됩니다.
현재 내 프로젝트만 사용 가능하게끔 제한을 걸기위해선 패키지명과 SHA-1 값이 필요합니다.
안드로이드 스튜디오 터미널 창을 열어 해당 코드를 쳐줍니다.
./gradlew signingReport
↓
아래와 같이 SHA1 값을 복사해줍니다.
↓
SHA-1 인증서 디지털 지문 입력란에 붙여넣기
↓
구글 맵 API를 이용할거기에 Maps SDK for Android 선택
↓
API Key 값 복사
2. 안드로이드 스튜디오 Manifest 및 gradle 설정
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.INTERNET"/>
매니페스트 파일에 사용자 권한 추가
Android 스튜디오에서 프로젝트 수준 build.gradle 파일을 열고 다음 코드를 buildscript 아래 dependencies 요소에 추가합니다.
plugins {
...
id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") version "2.0.1" apply false
}
그런 다음 모듈 수준 build.gradle 파일을 열고 plugins 요소에 다음 코드를 추가합니다.
plugins {
...
id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin")
}
모듈 수준 build.gradle 파일 dependencies 요소에 다음 코드를 추가합니다.
dependencies {
...
// GoogleMap
implementation("com.google.android.gms:play-services-maps:18.2.0")
// (옵션) GPS 이용해서 위치 확인
implementation("com.google.android.gms:play-services-location:21.1.0")
}
- 파일을 저장하고 프로젝트를 Gradle과 동기화합니다.
- 프로젝트 수준 디렉터리에서 local.properties를 열고 다음 코드를 추가합니다. YOUR_API_KEY를 API 키로 변경합니다.
- API 키를 AndroidManifest.xml 파일에 그대로 추가하지 마세요. 그렇게 하면 API 키가 안전하지 못한 방식으로 저장됩니다. 아래와 같이 loacal.properties 파일에 저장 후 Manifest 파일에서 참조하여 사용하세요.
MAPS_API_KEY=YOUR_API_KEY
AndroidManifest.xml 파일에서 com.google.android.geo.API_KEY로 이동한 후 android:value attribute를 다음과 같이 업데이트합니다.
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="${MAPS_API_KEY}" />
이러면 환경설정은 끝
'Kotlin' 카테고리의 다른 글
ListAdapter, DiffUtil (0) | 2024.01.24 |
---|---|
SharedPreferences를 이용한 데이터 저장 (1) | 2024.01.23 |
Kotlin 비동기 프로그래밍 (2) | 2023.11.28 |
Kotlin Scope Function (let, with, apply, run, also) (0) | 2023.11.28 |
Kotlin 문자열 숫자 변환 기능 + 2개 이상의 값 리턴 (0) | 2023.11.27 |