본문 바로가기
개발/Android

[Android] Kakao Map 적용해보기

by Dev Aaron 2020. 11. 8.
반응형

간단하게 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

파일 경로 수정 후 정상 동작하는 것을 확인할 수 있었다.​
카카오 은근 허술한데?…

반응형