카카오 api를 사용하려고 kakaoDevelopers 에서 개발가이드를 보며

따라하고 있는데 앱 생성/등록을 하여야 되서 하고있던 중에


키해시를 등록해야만 가능하다 해서 가이드에 있는

keytool을 이용한 방법, openssl을 이용한 방법 등을 해보았는데

나는 둘다 할 수 없었다. 


(cmd에서 keytool을 써서 해보니 키가 제대로 나오지 않고 깨어진?글자들이 나왔고

openssl을 쓰니 base64 부분에서 에러가나면서 openssl이 종료되었다.)


그래서 다른 방법을 알아보던 중

메소드를 이용해 로그를 찍어 해시 키를 구하는 방법이 있는 것을 알았다.


///////////////////////////////////


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());
}
}


//////////////////////////////////


이렇게 하고 getAppKeyHash(); 을 실행하면

로그부분에 D/Hash key: !#()%*&!#(%*&)!%)!= 이런식으로 찍히는 것을 확인 할 수 있다.


toByteArray에서 에러가 생긴다면 import를 잘못한 것이다. (Signature 부분 import를 확인해보기 바랍니다)

(android.content.pm.Signature; 이거로 임포트 되어야 함)


+ Recent posts