Sto costruendo un'app in cui gli utenti possono accedere con Facebook.Android Facebook SDK: genera l'hash key di rilascio
Ho creato le chiavi di hash come segue:
try {
PackageInfo info = getPackageManager().getPackageInfo(
"com.app.package",
PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures) {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
Log.d("KeyHash", "KeyHash:"+ Base64.encodeToString(md.digest(),
Base64.DEFAULT));
Toast.makeText(getApplicationContext(), Base64.encodeToString(md.digest(),
Base64.DEFAULT), Toast.LENGTH_LONG).show();
}
} catch (NameNotFoundException e) {
} catch (NoSuchAlgorithmException e) {
}
In modalità di debug, tutto funziona bene.
Quando ho esportare il progetto per il rilascio, dà questo errore:
"Invalid key hash. The key hash ****************** does not match any stored key hashes"
incollo la chiave stampata in Facebook Developer cruscotto, ma l'applicazione mi dà ancora quell'errore.
Il pacchetto completo di my actvity è "com.app.package.views
" e ho provato a utilizzare questo pacchetto (come Nome pacchetto Google Play) nella dashboard, ma non è cambiato nulla.
Come posso risolverlo? Come posso generare il giusto hash della chiave di rilascio?
ciò che è media da –
Penso che sia solo un alias o un nome da utilizzare durante la generazione di chiavi Hash –
mi puoi dire dove ho eseguito questo comando, perché quando lo eseguo mi dice che "keytool" non è riconosciuto come comando interno o esterno, programma operativo o file batch. – Tefa