Mobile Programming/Android
카카오 API 사용시 android_key_hash 문제
bboks.net
2014. 9. 3. 13:17
카카오 API에서는 keytool을 사용해서 해시를 생성하라고 하지만 실제 사용시 로그인에 계속 실패한다.
keytool 대신에 아래의 메소드를 이용해서 구한 키값을 사용하면 문제 해결
private void getAppKeyHash() { try { PackageInfo info = getPackageManager().getPackageInfo(getPackageName(), PackageManager.GET_SIGNATURES); for (Signature signature : info.signatures) { MessageDigest md; md = MessageDigest.getInstance("SHA"); md.update(signature.toByteArray()); String something = new String(Base64.encode(md.digest(), 0)); Log.d("Hash key", something); } } catch (Exception e) { // TODO Auto-generated catch block Log.e("name not found", e.toString()); } }
확인방법
아무 액티비티(왠만하면 제일 먼저 실행되는 액티비티)에 위 메소드를 추가하고 onCreate에서 위 메소드를 호출한다.
앱을 실행하여 Logcat에서 키값 확인
※ 앱을 실제 apk로 묶으면 키값이 달라질 수도 있는데 그때는 apk에서 나오는 키값을 추가하면 된다.