반응형
간단하게 Kakao 맵 API 사용해서 간단히 띄워보려고 한건데, 구글맵을 생각했을 때와 달리 쉽지 않았다… 가이드대로 해도 잘 안되는 부분도 있고, 초심자들의 경우 꽤나 애먹을 것 같아 간단히 정리해본다.
먼저 가이드 문서는 아래와 같다.
http://apis.map.kakao.com/android/guide/#mapview
1. 키 해시 등록에 필요한 해시 값 얻기
keytool을 이용하는 방법도 있지만 아래 코드를 이용해서도 얻을 수 있으니 참고하세요.
private fun findKeyHash(context: Context) {
val packageInfo = getPackageInfo(context, PackageManager.GET_SIGNATURES)
for (signature in packageInfo.signatures) {
try {
val md = MessageDigest.getInstance("SHA")
md.update(signature.toByteArray())
Log.d("TEST", "findKeyHash - [${Base64.encodeToString(md.digest(), Base64.NO_WRAP)}]")
} catch (e: NoSuchAlgorithmException) {
Log.w("TEST", "findKeyHash - failed: Unable to get MessageDigest. signature=$signature", e)
}
}
}
2. 에러 대응: NativeMapLibraryLoader: Can`t load DaumMapEngineApi.so file
설명에는 so 파일들을 libs 폴더에 위치하라고 하였는데, 실제로는 아래와 같은 에러를 내며 앱이 죽었다.
NativeMapLibraryLoader: Can`t load DaumMapEngineApi.so file
좀 더 검색해보니 so 파일들을 아래와 같은 경로에 위치해야 한다는 것을 알게 되었다.
app/src/main/jniLibs/
ㄴarm64-v8a/libDaumMapEngineApi.so
ㄴarmeabi/libDaumMapEngineApi.so
ㄴarmeabi-v7a/libDaumMapEngineApi.so
파일 경로 수정 후 정상 동작하는 것을 확인할 수 있었다.카카오 은근 허술한데?…
반응형
'개발 > Android' 카테고리의 다른 글
Android 앱 개발 시 Gradle을 통해 API Key 관리하는 방법 (0) | 2020.11.08 |
---|---|
[Android] Floating Action Button 애니메이션 추가 (0) | 2020.11.08 |
갤럭시 S7에서 CameraX 사용 시 앱 죽는 문제 – Bad method handle type 7 (0) | 2020.11.08 |
현재 위치 정보 얻기 – FusedLocationProvider (0) | 2020.11.08 |
Android Jetpack Navigation 사용하여 parameter 전달하기 (0) | 2020.11.08 |