Как генерировать хеш-подпись?

Я использую twilio sdk для интеграции проверки sms с моим приложением Android, twilio просит меня зарегистрировать хеш-подпись моего приложения и не использовать способы генерации хеш-подписи, всегда говорит, что это недопустимая хеш-подпись, это путь, который twilio хочет использовать хэш подпись

диаграмма здесь

java,android,twilio,twilio-api,

1

Ответов: 3


1 принят

Пользователь ниже команды в терминале студии android для генерации ключа ключа релиза

keytool -exportcert -alias [aliasname] -keystore [your app keystore path] | openssl sha1 -binary | openssl base64

И ниже код в вашем проекте, чтобы получить ключ ключа разработки

try {
    android.content.pm.PackageInfo info = getPackageManager().getPackageInfo(
            "com.apps.sonictonic",
            android.content.pm.PackageManager.GET_SIGNATURES);
    for (android.content.pm.Signature signature : info.signatures) {
        java.security.MessageDigest md = java.security.MessageDigest.getInstance("SHA");
        md.update(signature.toByteArray());
        android.util.Log.d("KeyHash", "KeyHash:" + android.util.Base64.encodeToString(md.digest(),
                android.util.Base64.DEFAULT));

    }
} catch (android.content.pm.PackageManager.NameNotFoundException e) {

} catch (java.security.NoSuchAlgorithmException e) {

}

0

Какими способами вы пытались? Существует 2 разных подписи вашего приложения, отладка и выпуск. Вы попробовали их обоих?


0

Вызовите этот метод в своей операции onCreate () и найдите свой ключ в logcat с помощью клавиши «HashKey»

public static void printHashKey(Context pContext) {
    try {
        PackageInfo info = getPackageManager().getPackageInfo(getPackageName(), PackageManager.GET_SIGNATURES);
        for (Signature signature : info.signatures) {
            MessageDigest md = MessageDigest.getInstance("SHA");
            md.update(signature.toByteArray());
            String hashKey = new String(Base64.encode(md.digest(), 0));
            Log.d("HashKey", "printHashKey() Hash Key: " + hashKey);
        }
    } catch (NoSuchAlgorithmException e) {
        Log.e(TAG, "printHashKey()", e);
    } catch (Exception e) {
        Log.e(TAG, "printHashKey()", e);
    }
}
java, android, twilio, twilio-fire,
Похожие вопросы