디버그버전, 릴리즈키로 서명한 버전에서 잘 되다가, Google play app signing 기능때문인지 로그인기능이 잘 작동하지 않습니다.
그래서 이 문제를 해결하기 위해
앱 내 자바 코드로 키해시 구하기
public static String getKeyHash(final Context context) {
PackageInfo packageInfo = getPackageInfo(context, PackageManager.GET_SIGNATURES);
if (packageInfo == null)
return null;
for (Signature signature : packageInfo.signatures) {
try {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
return Base64.encodeToString(md.digest(), Base64.NO_WRAP);
} catch (NoSuchAlgorithmException e) {
Log.w(TAG, "Unable to get MessageDigest. signature=" + signature, e);
}
}
return null;
}
코드를 포함한 앱을 마켓이 출시 한 뒤, 마켓에서 다운로드 받은 버전의 키 해시값을 확인해보았더니, 이미 등록되어있는 키 해시 값이였습니다.
페키지명은 io.spochain.gudda
마켓 url은 market://details?id=io.spochain.gudda 입니다.
감사합니다.