Ich habe ein Problem mit der Anmeldung mit Facebook-Konto in meiner Anwendung. Ich habe auf Facebook Doc gelesen. Und ich habe alle Schritte als Facebook Doc gemacht.
Zuerst beim Login mit Facebook-Account in der App - ERFOLGREICH ! und dann in der Anwendung abmelden. Ich möchte mich erneut mit meinem Facebook-Konto anmelden. Aber funktioniert nicht !! Und ich habe diese Ausnahme gemacht! Bitte hilf mir !
Ausnahme: Für diese App sind keine Android-Schlüssel-Hashes konfiguriert. Konfigurieren Sie Ihre App-Schlüssel-Hashes unter http: developer.facebook.com/apps/ "APP ID".
Endlich; Ich habe einen Teil des Codes für HashKey Genarate verwendet
try {
PackageInfo info = getPackageManager().getPackageInfo("MY PACKAGE NAME", PackageManager.GET_SIGNATURES);
for (android.content.pm.Signature signature : info.signatures) {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
String sign=Base64.encodeToString(md.digest(), Base64.DEFAULT);
Log.e("MY KEY HASH:", sign);
// Toast.makeText(getApplicationContext(),sign, Toast.LENGTH_LONG).show();
}
} catch (NameNotFoundException e) {
} catch (NoSuchAlgorithmException e) {
}
Ich habe mein Problem gelöst. Ich hätte auf Facebook einstellen sollen. Schritte :
- Gehen Sie zur Facebook-Entwicklerseite: https://developers.facebook.com/
Öffnen Sie die App-Registerkarten und klicken Sie dann auf die Einstellung
Fügen Sie den generierten Hashkey in das Feld von HashKey ein. = Wenn Sie ihn noch nicht haben, holen Sie sich Ihren Schlüssel-Hash-Teil des Codes
- Und dann lautet Single Sign On "Ja": Single Sign On: Aktivieren Sie diese Einstellung.
Ich wollte meine Entschlossenheit teilen. Vielleicht braucht jemand diese Lösung. Viel Glück !
quelle
keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64
Für Windows:keytool -exportcert -alias androiddebugkey -keystore %HOMEPATH%\.android\debug.keystore | openssl sha1 -binary | openssl base64
Antworten:
Sie müssen Ihren Hash-Schlüssel nicht generieren. Wenn Sie versuchen, über Ihre App auf Facebook zuzugreifen, wird eine Fehlermeldung angezeigt, die besagt, dass "[Hash Key]" nicht registriert oder konfiguriert ist. Kopieren Sie einfach diesen Schlüssel und gehen Sie zu developer.facebook.com, wo Sie Ihre App für die Facebook-Überprüfung registriert und unter Schlüssel-Hashes eingefügt haben.
Denken Sie daran: Für jedes Gerät kann der Hash-Schlüssel unterschiedlich sein. Sie müssen es frisch einschließen.
Standardmäßig sollte dieser Schlüssel Folgendes tun: 2jmj7l5rSw0yVb / vlWAYkK / YBwk =
Außerdem müssen Sie Facebook vor allem Ihre App-Details sowie Screenshots darüber, wo Sie Facebook-Funktionen verwenden, und Gründe für Ihre Verwendung bereitstellen. Sie müssen das überprüfen.
quelle
Um einen Hash Ihres Release-Schlüssels zu generieren, führen Sie den folgenden Befehl unter Mac oder Windows aus und ersetzen Sie Ihren Release-Schlüssel-Alias und den Pfad zu Ihrem Keystore. Führen Sie unter OS X Folgendes aus:
keytool -exportcert -alias <RELEASE_KEY_ALIAS> -keystore <RELEASE_KEY_PATH> | openssl sha1 -binary | openssl base64
Verwenden Sie unter Windows:
keytool -exportcert -alias <RELEASE_KEY_ALIAS> -keystore <RELEASE_KEY_PATH> | openssl sha1 -binary | openssl base64
Ref: https://developers.facebook.com/docs/android/getting-started/#create_hash
quelle
Wenn Sie Ihre App nicht veröffentlicht haben und nur den Debug-Versions-Hash verwenden möchten, können Sie ihn mit diesem Befehl aus Ihrem Debug-Keystore abrufen:
keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64
Mehr zu diesem verwandten SO-Beitrag
quelle
Es gibt eine einfache Möglichkeit, Ihren Hash-Schlüssel zu erhalten.
Fügen Sie einfach in Ihre .kt-Hauptdatei in der onCreate-Methode die folgenden Zeilen ein:
FacebookSdk.sdkInitialize(this) println("Facebook hash key: ${FacebookSdk.getApplicationSignature(this)}")
Kopieren Sie dann das Ergebnis auf die Website der Facebook-Entwickler. Manchmal hat das Ergebnis nicht das gleiche Symbol (=) am Ende der generierten Zeichenfolge. Wenn ja, fügen Sie es manuell hinzu.
quelle
Holen Sie sich alle Hash Expo
expo fetch: android: hasches
quelle