web-dev-qa-db-ja.com

FacebookのログインがAndroidのFacebookで機能しないアプリのブラウザー

非常にログインしたときから、ウェブサイトでFacebookログインJavaScript SDKを使用していますが、最近Android Facebookアプリ内ブラウザーで動作しなくなりました。ログインボタンをクリックすると、リロードします承認ページに移動するための完全なページ、そして戻ってきて何もない

Facebookが提供するサンプルも同じ問題を抱えており、FB.login関数を使用してテストし、さらにFacebookログインボタン( https://developers.facebook.com/docs/facebook-login/web/login-ボタン )。それらの両方について同じ結果を得ました。ページを更新するだけです。

サンプルコード:

<script>

function LoggedFb(){
      FB.login(function (response) {
                FB.api(`/me?fields=id,email&access_token=${response.authResponse.accessToken}`, function 
                (userResponse) {
                    alert(userResponse.email);
                });
            }, { scope: 'email' })
}

</script>

コードは、Android Facebookアプリ内ブラウザ以外のすべてのプラットフォームで動作しています。

ありがとう。

4
sagar43

私にとって、それは常にループしていました:サインイン、更新、サインインしないでもう一度やり直してください。

FB.getLoginStatusの代わりにFB.loginを使用してこれを修正できました。

ユーザーがすでにfbを介してログインしている場合、それは通過します。そうでない場合は、1回更新されますが、ログインは機能します。

誰かがこれを修正して、更新がまったく行われないようにしていただければ幸いです。

コード例:

function signIn() {
  FB.getLoginStatus((response: any) => {
    if (response.status !== 'connected') {
      return FB.login((response: any) => {
        handleFbResponse(response);
      }, {
        scope: 'public_profile,email',
        enable_profile_selector: true,
        auth_type: 'rerequest',
        return_scopes: true
      });
    } else {
      handleFbResponse(response);
    }
  });
}

function handleFbResponse(response) { ... }
1
Aryeh Beitz