원문 : http://huammmm1.tistory.com/373
당췌 API쓰기가 왜이렇게 어려운 건지...
카톡을 사용하려면 앱키와 키해시가 있다.
앱키는 앱을 추가할 때 카톡API에서 생성되는것이고
키해시는 실제 소스에서 APK생성시에 만들어진다.
카톡 API에서 키해시등록을 하는 방법이 귀찮게 되어있는데
샘플App의 시작Activity에서 아래 method를 호출하면 로그캣에 찍힌다.
KakaoTalkLoginActivity에서
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setBackground(getResources().getDrawable(R.drawable.kakaotalk_sample_login_background));
Log.d("KakaoTalkLoginActivity", "onCreate ");
getAppKeyHash();// 호출
}
//////// method 추가
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());
}
}