raccoondev85 / cordova-plugin-kakao-sdk

Kakao Cordova SDK Plugin
MIT License
18 stars 21 forks source link

We are getting "AUTHORIZATION_FAILED" every time. #20

Open konstantsolutions opened 4 years ago

konstantsolutions commented 4 years ago

I am using ionic4 to login with Kakao. i am still getting "AUTHORIZATION_FAILED" even i setup account for android. response is below:

_kakaoCordovaSDK = Error: {"osType":"android","errorCode":"-777","errorMessage":"AUTHORIZATION_FAILED: invalid android_key_hash or ios_bundle_id or web_site_url","extra":{"httpStatus":500,"exception":""}}

IONIC code: async kakao() { let loginOptions = {}; loginOptions['authTypes'] = [ AuthTypes.AuthTypeTalk, AuthTypes.AuthTypeStory, AuthTypes.AuthTypeAccount ];

this._kakaoCordovaSDK.login(loginOptions).then(async (success) => {
  console.log('_kakaoCordovaSDK: ', JSON.stringify(success));
}).catch(async (e) => {
  console.log('_kakaoCordovaSDK = Error: ', JSON.stringify(e));
});

}

yaioyaio commented 4 years ago

kakao 자신의 앱에서 안드로이드에 등록을 하는 키 해시 값을 다음과 같은 코드로 구해서 해 보세요

keytool로 해시 값 구하는게 약간의 버전 차이로 안 되는 경우가 있다고 하네요

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;

}

Suraj-B-Chettri commented 3 years ago

I am facing the same problem. did you find solution?