Android Facebook SDK 4.0 Login ohne Facebook App

Habe ich Probleme mit der Webansicht login für Facebook auf Android.

Ich verfolgt habe in den tutorials und der login funktioniert perfekt, wenn der Nutzer hat die Facebook-app installiert. Wenn die Facebook-app nicht installiert ist, ist die webview für facebook login erscheint; jedoch, nach der Anmeldung und dem akzeptieren der Berechtigungen, die webview einfach leitet Sie zurück zum login-Bildschirm. Es geht nie zurück zu meiner app.

Hat sonst noch jemand diesem problem begegnet?

    FacebookSdk.sdkInitialize(this);
    profileTracker = new ProfileTracker() {
        @Override
        protected void onCurrentProfileChanged(Profile profile, Profile profile2) {
            if (profile2 != null) {
                loggedIn(profile2);
            } else {
                loggedOut();
            }
        }
    };
    accessTokenTracker = new AccessTokenTracker() {
        @Override
        protected void onCurrentAccessTokenChanged(AccessToken accessToken, AccessToken accessToken2) {
            Profile.fetchProfileForCurrentAccessToken();
        }
    };
    callbackManager = CallbackManager.Factory.create();
    LoginManager.getInstance().registerCallback(callbackManager,
            new FacebookCallback<LoginResult>() {
                @Override
                public void onSuccess(LoginResult loginResult) {
                    //App code
                    getProfileInfo();
                }

                @Override
                public void onCancel() {
                    //App code
                    Log.e("Facebook Login", "Login Cancelled");
                    loggedOut();
                }

                @Override
                public void onError(FacebookException exception) {
                    //App code
                    Log.e("Facebook Login", "Failed to Login " + exception.toString());
                    loggedOut();
                }
            });

Blick auf die Protokolle, ohne Filter, während der login stattfindet, sehe ich ein paar von möglicherweise relevanten Protokolle.

I/chromium [INFO:CONSOLE(0)] "event.returnValue is deprecated. Please use the standard event.preventDefault() instead.", source:  (0)
I/Auth.Core [TokenCache] Missing snowballing token: no granted scopes set.
  • Genau wie werden Sie authentifiziert? Ich bin kein Android-Entwickler, aber ich bin mir ziemlich sicher, dass dies hat zu tun mit Ihrer Gültigen OAuth Redirect-URI. Siehe developers.facebook.com/apps/<Ihr app-id>/Einstellungen/erweitert/
  • teilen Sie Ihren code für die Facebook-Anmeldung
  • Ein Ungültiger redirect-URI führen sollte, eine Fehlermeldung vor dem Benutzer akzeptieren können Berechtigungen schon.
  • Ich bin mir ziemlich sicher, es hat nichts zu tun mit dem code, aber ich poste es trotzdem. Es Bestand login-code vom neuen Facebook SDK. Wenn der Nutzer der facebook-app, die Anmeldung funktioniert einwandfrei. Es ist nur, wenn der Benutzer geht durch das web-login. Es noch nie betritt onActivityResult
  • Sollte dies funktionieren. Welches Gerät Sie testen auf? Passiert das auf mehreren Geräten? Gibt es etwas in der logcat?
  • vielen Dank für Ihre Antwort. Es passiert auf allen Geräten, die ich Teste (Samsung und Nexus). Es gibt nichts aus meiner Anwendung im logcat, aber ich habe nicht geprüft, die ungefilterten Nachrichten.
  • Ich habe gerade versucht es, und ich sehe nur ein paar der möglichen relevanten Protokolle (es ist wirklich schwer zu sagen). Ich werde aktualisieren, in meiner Frage.
  • Tun die Beispiel-apps (das Schiff mit dem SDK) für Sie arbeiten?
  • Vielen Dank für deine Hilfe @MingLi
  • Gleiche geschieht mit meiner app. Es arbeitete, bevor, nicht sicher, was Los ist. Ich bin mit dem callbackManager und in onActivityResult ich habe die callbackManager nennen.
  • für mich, mein problem war das überschreiben der Schaltfläche, die auf klicken Sie auf und ruft Login manuell über den manager. Wenn Sie noch Fragen haben, ich würde nicht dagegen, einen Blick auf ihn!
  • Vielen Dank für Ihr Angebot. Was ich getan habe, ist zu gehen zurück auf die live-version unserer app, nur um zu sehen, ob es etwas, was ich geändert habe, da bin ich mir 100% sicher, es war vor der Arbeit. Und Nein, es funktioniert nicht jetzt. Es ist so, wie wenn sich etwas geändert hat auf den dialog Facebook öffnet. Der exakt gleiche code war in Ordnung arbeiten.

InformationsquelleAutor sihrc | 2015-05-02
Schreibe einen Kommentar