Реактивный логин с разрешениями на Android не разрешен - PullRequest
3 голосов
/ 10 июля 2019

После обновления собственного кода с 0.56 до 0.59.8 (с использованием FBSDK 0.10.1) логин Facebook больше не работает на Android.

, когда я заполняю форму входа в Fb и продолжаю,Обещание LoginManager.logInWithPermissions не разрешается и никогда не переходит в .then () после logInWithPermissions ()

вот мой код:

loginWithFBSDKLoginManager() {
    LoginManager.logOut();
    const self = this;
    return new Promise((resolve, reject) => {
      LoginManager.logInWithPermissions(['public_profile', 'email']).then(function (result) {
        if (result.isCancelled) {
          return;
        }
        AccessToken.getCurrentAccessToken().then((data) => {
          const accessToken = data.accessToken.toString();
          const userID = data.userID.toString();
          self
            .getUserInfos(accessToken)
            .then((response) => {
              resolve({ ...response, accessToken, userID });
            })
            .catch(
              function (error) {
                reject(error);
              }
            );
        });
      });
    });
  }

Я пытался поставить точку останова почти везде, но ничего не помогало.Самым странным является то, что при правильной работе на iOS эта проблема возникает только на Android.

Я попытался отладить свое приложение с помощью Android Studio, и единственная ошибка, обнаруженная в консоли, -

* 1016.* I / chromium: [INFO: CONSOLE (0)] "Отказано в отображении" https://m.facebook.com/intern/common/referer_frame.php' в кадре, поскольку для параметра 'X-Frame-Options' установлено значение 'deny'. ", Источник: https://m.facebook.com/v3.3/dialog/oauth?client_id=2129868160675609&e2e=%7B%22init%22%3A1562743341374%7D&sdk=android-5.0.3&scope=public_profile%2Cemail&state=%7B%220_auth_logger_id%22%3A%22edb48b96-de45-47e6-8331-f3db300e4eb2%22%2C%223_method%22%3A%22web_view%22%7D&default_audience=friends&redirect_uri=fbconnect%3A%2F%2Fsuccess&auth_type=rerequest&display=touch&response_type=token%2Csigned_request&return_scopes=true&ret=login&fbapp_pres=0&logger_id=edb48b96-de45-47e6-8331-f3db300e4eb2#= (0) I / chromium: [INFO: CONSOLE (53)] "ErrorUtils обнаружил ошибку:« Ошибка сценария. ». Последующие ошибки не будут регистрироваться; см. https://fburl.com/debugjs.", источник: https://static.xx.fbcdn.net/rsrc.php/v3iEpX4/ys/l/fr_FR/LDgA15LzuMu.js (53) I / chromium: [INFO: CONSOLE (262)] "Uncaught SecurityError: заблокирован кадр с источником" https://m.facebook.com" от доступа к кадру с источником "null". Кадр, запрашивающий доступ, имеет протокол"https", у кадра, к которому осуществляется доступ, есть протокол "data". Протоколы должны совпадать. ", источник: https://static.xx.fbcdn.net/rsrc.php/v3iEpX4/ys/l/fr_FR/LDgA15LzuMu.js (262)

Может ли кто-нибудь помочь мне решить эту проблему?или направьте меня, чтобы найти основную причину.

Спасибо

...