Как публиковать сообщения на Facebook с Android, используя последнюю версию SDK

Все образцы, которые я видел до сих пор, похоже, используют более раннюю версию SDK, а параметры и вызовы не совпадают. Используя последний SDK, я пытаюсь сделать это:

            String access_token = facebook.getAccessToken();
            Bundle bundle = new Bundle();
            bundle.putString("access_token", access_token);
            bundle.putString("app_id", FACEBOOK_APP_ID);
            bundle.putString("message", "My First Post");
            bundle.putString("description", "My First Description");
            asyncrunner.request("me/feed", bundle, new RequestListener() {

И я возвращаю вызов onComplete() с ответом = "{"data":[]}.

И ничего никогда не публикуется на моей стене в FB. Может, я недостаточно долго жду? Как долго мне нужно ждать, прежде чем он появится?


person user645402    schedule 27.07.2011    source источник
comment
странно... вдруг теперь работает... ??   -  person user645402    schedule 28.07.2011


Ответы (2)


Недавно я опубликовал статью в блоге на TechRepublic, которая должна помочь вам в этом. Он дополнен образцом кода (за вычетом публикации, но если вы не можете понять это, я был бы рад помочь в дальнейшем). Вы можете просмотреть мою статью здесь:

person Kyle Miller    schedule 27.07.2011
comment
в вашей статье нет ничего о том, как постить на стену ФБ. - person user645402; 28.07.2011

вы можете попробовать сделать следующее

    mAsyncRunner = new AsyncFacebookRunner(facebook);

    Bundle params = new Bundle();
    params.putString("message", "I am playing MegaCandy mobile right now!!");

    mAsyncRunner.request("me/feed", params, "POST", new TestRequestListener(), null);

Это решит вашу проблему с публикацией с помощью Graph API. Я знаю, что если метод http является почтовым, то вы должны добавить сообщение в виде байта [], но это единственный способ заставить его работать правильно.

Вы все равно получите исключение приведения класса для нескольких полей (таких как сообщение, формат и access_token), но оно будет работать. Я предполагаю, что более глубокий взгляд на API может показать, в чем проблема (убедитесь, что вы внимательно изучили класс Util.java)

Есть кое-что, что вы должны иметь в виду, чтобы приведенный выше код работал, вам нужно вручную изменить FacebookSDK, вот полный пост по этой проблеме: Опубликовать сообщение на стене facebook с android fb sdk всегда ошибка

person user1288797    schedule 23.03.2012