PhoneGap facebook плагин для Android дает мне oauthexception

1

серьезно сошел с ума здесь....

Я пытаюсь заставить плагин facegap facebook для Android работать, но он действительно подталкивает меня к стене (без каламбуров).

Я использую код от https://github.com/irnc/phonegap-plugin-facebook-connect/tree/oauth-2.0+irnc, по крайней мере, я думаю, что я есть.

Кажется, у меня две проблемы:

  1. следующий обратный вызов в логине (из pg-plugin-fb-connect) дает ошибку, потому что "FB.Auth.setAuthResponse(response.authResponse, response.status);" Не может быть найдено. Использую ли я неправильный фейсбук sdk? По-видимому, нет, см. Править ниже

    PhoneGap.exec(function (response) {
            console.log('PG.FB.login.success: ' + JSON.stringify(response) + ', store into localStorage ...');
            localStorage.setItem(key, JSON.stringify(response));
    
            FB.Auth.setAuthResponse(response.authResponse, response.status);
    
            if (cb) {
                cb(response);
            }
        }, null, service, 'login', ['publish_stream', 'read_stream']);
    },
    
  2. Когда я комментирую FB.Auth.setAuthResponse(response.authResponse, response.status); выражение, мой логин возвращается успешно! Я получаю автоответчик с accesstoken и статус, установленный для подключения. Когда я пытаюсь выполнить следующий код (при обратном вызове)

    FB.api('/me/feed', 'post', { message: body }, function(response) {
    if (!response || response.error) {
        console.log(JSON.stringify(response.error, null, 4));
        alert('We are very sorry, but somthing went wrong');
    } else {
      alert('Message was successfully posted to your wall!');
    }
    });
    

он дает мне сообщение oauthexception: "Активный токен доступа должен использоваться для запроса информации о текущем пользователе".

Я аутентифицирован с разрешениями read_stream, publish_stream.

Эти два, вероятно, связаны, но я ничего не могу найти о вызове setAuthReponse в facebook api.

Помощь EDIT, по-видимому, не на этом пути, но я продолжил свои поиски, чтобы заставить это работать.

Фейсбук js sdk, который я получил от gythub repo, все использует "старые" методы auth. Я загрузил новую facebook js sdk и FB.Auth.setAuthResponse. Я скопировал код в мой существующий js sdk и изменил все вызовы setSession на setAuthRepsonse. Все работает нормально, за исключением того, что токен доступа не отображается, когда я делаю над вызовами FB.api. После этих изменений ошибка остается такой же!

О да, я также изменил чек в обратном вызове login, чтобы проверить authResponse вместо сеанса (это в примере).

Помощь более чем приветствуется,

Теги:
plugins
facebook
facebook-graph-api
cordova

1 ответ

0

Думаю, я это исправил. В основном ConnectPlugin.java все еще возвращает объект ответа "сеанс" вместо "authResponse", который ожидает новый SDK.

Подробнее см. Https://github.com/odbol/phonegap-plugin-facebook-connect/commit/0ef84e29603338930ff82fc6d6ef8525b668077d.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню