구글의 맵 API를 사용하면
앱에서 지도를 활용할 수 있다.
2021.06.25 - [안드로이드/기본] - [Kotlin] 안드로이드 권한 (Permission) 체크하기 - 위치정보 사용하기
[Kotlin] 안드로이드 권한 (Permission) 체크하기 - 위치정보 사용하기
안드로이드에서는 특정 동작을 위하여 권한이 필요하다. 마시멜로 버전 이전에는 앱 설치시 모든 권한이 요청되었지만 이후 버전에서는 권한이 크게 일반 권한과 위험 권한으로 나뉘었다. 일반
hanyeop.tistory.com
최우선 적으로, 위치 권한부터 추가해야한다.
https://cloud.google.com/maps-platform/
Geolocation API | Google Maps Platform | Google Cloud
Google Maps Platform을 선택하면 정확한 실시간 데이터 및 동적 이미지로 몰입형 위치정보 활용 환경을 만들고 더 나은 비즈니스 의사결정을 내릴 수 있습니다.
cloud.google.com
사이트로 들어가서 시작하기를 클릭하여
프로젝트를 생성해준다.
생성이 완료되면 Maps SDK for Android를 클릭하여 맵 API로 들어가서
좌측에서 사용자인증정보를 들어간다.
API키를 발급받을 수 있다.
API키는 노출되면 안되므로 별도로 저장하고,
제한사항에 SHA-1 키를 등록하여준다.
2021.01.22 - [안드로이드/파이어베이스] - [Android] 안드로이드 스튜디오 앱 apk 추출 후 파이어베이스 구글 로그인이 되지 않는 현상
[Android] 안드로이드 스튜디오 앱 apk 추출 후 파이어베이스 구글 로그인이 되지 않는 현상
안드로이드 스튜디오에서 apk를 추출하기위해 release 빌드를 하게되면 파이어베이스 기능이 작동하지 않는 현상이 발생한다. SHA-1 지문이 두가지 형태기 때문인데 debug용과 release 용이 따로 존재
SHA키를 아는 방법은 여기서 확인할 수 있다.
// Google Maps implementation 'com.google.android.gms:play-services-maps:17.0.1' implementation 'com.google.android.gms:play-services-location:18.0.0'
구글 맵을 추가해주고
<meta-data android:name="com.google.android.geo.API_KEY" android:value="@string/maps_api_key"/> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/>
매니패스트에서 메타데이터를 추가해준다.
API KEY의 value 자리에 아까 발급받은 API 키를 넣는다.
이제 사용하고 싶은 곳에 MapView를 만들어준다.
mapView.onCreate(savedInstanceState) // 맵 불러오기 mapView.getMapAsync { map = it }
화면이 생성될때
mapView도 생성되게 onCreate를 호출하여 주고,
getMapAsync로 맵을 불러와준다.
/** * 라이프 사이클에 맞게 맵뷰를 처리해줌 */ override fun onResume() { binding.mapView.onResume() super.onResume() } override fun onStart() { super.onStart() binding.mapView.onStart() } override fun onPause() { super.onPause() binding.mapView.onPause() } override fun onStop() { super.onStop() binding.mapView.onStop() } override fun onLowMemory() { super.onLowMemory() binding.mapView.onLowMemory() }
라이프사이클(액티비티,프래그먼트) 에 맞게
맵뷰를 설정해준다.
이제 잘 불러와 진것을 확인할 수 있다.
https://github.com/HanYeop/RunnersHigh
HanYeop/RunnersHigh
달리기 기록 앱. Contribute to HanYeop/RunnersHigh development by creating an account on GitHub.
github.com
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.