Ich arbeite mit Titanium Studio 3.2.0 und Titanium SDK 3.2.0.GA und stelle sie auf Android-Geräten mit oder ohne Facebook-App bereit. Um mich bei Facebook anzumelden, verwende ich das von Titanium .
>Ich habe das gleiche Problem beschrieben in dieser Link Wenn ich das erste Mal autorisiere, wird das Anmelde-Ereignis von Facebook ohne Probleme ausgelöst. Aber wenn ich mich abmelde und dann versuche, erneut zu autorisieren (zu diesem Zeitpunkt wurden die Berechtigungen meiner App bereits akzeptiert, so dass theoretisch das Anmeldeereignis ausgelöst werden sollte), erhalte ich den folgenden Fehler auf logcat:
%Vor%Ich habe sogar versucht, diesen Fehler mit einem try / catch abzufangen, um damit umzugehen, aber obwohl ich den Autorisierungsaufruf innerhalb eines gesetzt habe, wurde der Code innerhalb des Catch nicht ausgeführt. Es ist nichts Ungewöhnliches, wie ich die Autorisierung mache, soweit ich weiß:
%Vor%Nach einigem Graben habe ich etwas bemerkt, das erste Mal, wenn ich versuche zu autorisieren, werde ich zur Facebook App weitergeleitet und nachdem ich die Berechtigungen akzeptiert habe, wird das Login-Ereignis wie gewünscht ausgelöst (als Beweis bekomme ich ein Access Token), Wenn ich mich auslogge, wird das Zugriffstoken, das für die Sitzung verwendet wurde, annulliert (ich habe es im Logout-Ereignis überprüft). Wenn ich erneut autorisiere, scheint das Facebook-Modul nicht nach einem neuen Zugriffstoken zu greifen, obwohl meine App ist bereits erlaubt, es wird versucht, den ungültigen zu verwenden, daher wird dieses ungültige Zugriffstoken geworfen, obwohl dies nur eine Vermutung von meinem Teil ist und ich keine Ahnung habe, ob dies die Ursache ist .
Wie kann ich dieses Problem lösen? Die Lösung, die ich im Moment benutze, ist, die Berechtigungen von meinem Facebook-Benutzerkonto durch einen Graph-API-Anruf zu entfernen, was nicht der richtige Weg ist, aber es ist die einzige Möglichkeit für mich, das Facebook-Anmeldeereignis erneut zu starten.
Ich habe auch meine Hash-Schlüssel überprüft und sie scheinen in Ordnung zu sein, da ich keine ungültige Hash-Schlüssel-Nachricht erhalte, das Problem hier ist das Zugriffs-Token, der Autorisierungs-Aufruf sollte ein Zugriffs-Token mit einem anderen Ablauf zurückgeben, soweit ich weiß oder hatte ich eine falsche Vorstellung?
Demnach Facebook-Entwickler verknüpfen , es gibt vier Szenarien, wenn ein Zugriffstoken abläuft, aber für das Abmeldeszenario bekomme ich eine andere Fehlermeldung, die dort angezeigte Fehlermeldung ist Fehler beim Validieren des Zugriffstokens: Die Sitzung ist ungültig, weil der Benutzer sich abgemeldet hat , während derjenige, den ich erhalte, LoginDialogListener onFacebookError: Invalid access token ist. Was verursacht die Fehlermeldung, die ich bekomme?
Jede Hilfe wird geschätzt, danke im Voraus.
Tags und Links android facebook appcelerator-mobile titanium-mobile