3
this.FBlogin = function() {
    console.log("TEST");

    FB.login(
            function(response) {

                console.log(response);

                if (response.session) {
                    console.log(response.session);
                } else {
                    console.log('not logged in');
                }
            },
            { scope: "user_about_me, user_activities, user_birthday, user_hometown, user_interests, user_location, user_religion_politics, user_status, user_website, offline_access, email" }
    );
}

TEST のみが logCat に出力されます。

02-01 00:09:30.616: D/CordovaLog(1489): file:///android_asset/www/js/cdv-plugin-fb-connect.js: Line 24 : Cordova Facebook Connect plugin initialized successfully.
02-01 00:09:30.616: I/Web Console(1489): Cordova Facebook Connect plugin initialized successfully. at file:///android_asset/www/js/cdv-plugin-fb-connect.js:24
02-01 00:09:32.096: D/DroidGap(1489): onMessage(spinner,stop)
02-01 00:09:33.907: D/(1489): HostConnection::get() New Host Connection established 0x93e9038, tid 1526
02-01 00:09:48.106: D/CordovaLog(1489): TEST
02-01 00:09:48.106: D/CordovaLog(1489): file:///android_asset/www/js/auth.js: Line 148 : TEST
02-01 00:09:48.106: I/Web Console(1489): TEST at file:///android_asset/www/js/auth.js:148
02-01 00:09:48.185: D/dalvikvm(1489): GC_CONCURRENT freed 56K, 2% free 10199K/10375K, paused 4ms+3ms
02-01 00:09:48.386: D/DroidGap(1489): Paused the application!
02-01 00:09:48.386: D/CordovaWebView(1489): Handle the pause
02-01 00:09:49.025: I/dalvikvm(1489): threadid=3: reacting to signal 3
02-01 00:09:49.055: I/dalvikvm(1489): Wrote stack traces to '/data/anr/traces.txt'
02-01 00:09:49.145: W/EGL_emulation(1489): eglSurfaceAttrib not implemented
02-01 00:09:49.595: D/OpenGLRenderer(1489): Flushing caches (mode 0)
02-01 00:09:55.026: D/DroidGap(1489): Resuming the App

FB アプリにリダイレクトされたようですが、トップバーに AppId と「facebook」という警告ボックスしか表示されません。アプリが一時停止し、戻ってきた後、成功ハンドラーが呼び出されませんか? 誰でも理由を知っていますか?またはどのようにデバッグするのですか?

PS appId は正しくstrings.xmlに追加されます。キー ハッシュが生成され、パッケージとクラス名と同様に FB に追加されました。何か見逃しましたか?

PPS 使用: Phonegap 2.2。および phonegap-plugin-facebook-connect lib の対応するブランチ: https://github.com/davejohnson/phonegap-plugin-facebook-connect/tree/cordova-2.2-facebook-android-3.0

4

4 に答える 4

7

Ok it seams also to be an issue with the scope. After changing to email only, the success function callback is executed.

{ scope: "email" }

see also: https://github.com/davejohnson/phonegap-plugin-facebook-connect/issues/240

Attention the examples are outdated:

response.session

use the following instead:

response.authResponse.accessToken
response.authResponse.session_key
response.authResponse.expiresIn
response.authResponse.userId
response.authResponse.sig
response.authResponse.expirationTime
response.status

It the OAuth2 handling: see https://developers.facebook.com/blog/post/2011/07/21/updated-javascript-sdk-and-oauth-2-0-roadmap/

于 2013-02-03T19:32:24.530 に答える
0

私はすべての手順に従いましたが、ログイン作業は初めて成功しました。

ログイン後、アプリケーションが機能せず、再起動すると Invaid android_key パラメータ エラーが発生します。

ハッシュ キーは FB アプリで構成されます。Phonegap Build 3.0 を使用しています

于 2014-05-05T12:35:49.193 に答える