2012-02-04 2 views
2

Я хочу загрузить фотографию с моего приложения Android на страницу фейсбука с помощью API facebook.Загрузить фото на страницу друга/поклонника с Android

Когда я смотрю в примере приложения Android-приложения hackbook (link). код выглядит следующим образом к фотографии загрузки:

Bundle params = new params.putString("url", 
"http://www.facebook.com/images/devsite/iphone_connect_btn.jpg");       params.putString("caption", 
    "FbAPIs Sample App photo upload"); 

Utility.mAsyncRunner.request("me/photos", params, 
    "POST", new PhotoUploadListener(), null); 

Этот код работает, он отправляет фото на моей странице facebook. Но я не хочу, чтобы фотография была размещена на моей странице, но на странице поклонника.

Как объясняется в документации на facebook, «я» может быть изменен с помощью facebook User_ID. Я попытался изменить «me/photo» в «[fanpagename]/photo» или «[fanpageID]/фото», но это не сработало. когда я использовал имя пользователя, я получил ошибку, когда я использовал идентификатор, он опубликовал фотографию на моей собственной странице. В графической документации на графике (link) ни один пример или пояснение не объясняет, как загрузить фотографию на странице вентилятора.

также

params.putString("to", [fbid]); 

не работает.

Любые предложения?

ответ

2

Я был занят этим исследованием в течение трех полных дней и не нашел ответа на мою проблему. Но я думаю, что у меня есть объяснение.

Если пользователь отправляет фотографию другу/fan_page с официальным приложением Android для Android, он использует «фид» с изображением (url-link). Пользователь не может видеть на своей стене, что он фактически поделился или разместил картинку на странице friend/fan_page. (например: «Bob - отправил фотографию на CocaCola»)

Вероятно, это причина, по которой функция отключена, потому что разработчики могут использовать ее для отправки фотографий всем друзьям/fan_pages, если пользователь не знает об этом ,

Я пришел к этой гипотезе, потому что нашел что-то вроде работы. Сначала загрузите фотографию в собственный альбом пользователя. получить URL-адрес этой фотографии, а затем опубликовать «фид» на странице friend/fan_page с изображением (url-lnk). Затем Facebook произнес эту ошибку: «FBCDN-изображение не разрешено в потоке», другими словами, вы не можете использовать фотографии, которые находятся на домене веб-сайта FB для связи. Поэтому я думаю, что в отделе разработки facebook довольно много ошибок/ленив: P, который жаль, потому что это хорошая функция социальной сети для мобильных приложений.

1

Вы на правильном пути, но для публикации фотографий на страницу вам понадобятся разрешения publish_stream и manage_pages и токен доступа к странице, чтобы доказать, что у вас есть их. Вы можете прочитать об этом здесь:

  1. http://developers.facebook.com/docs/reference/api/page/#photos
  2. http://developers.facebook.com/docs/reference/api/page/#page_access_tokens

Некоторые примеры кода (с помощью PHP SDK, но логика должна быть одинаковой на любом языке) здесь: https://stackoverflow.com/a/7222078/164439

Update:

Если вы хотите разместить на страницу в стена/Лента (не являясь администратором страницы), вы можете сделать это без разрешения «Управление страницами» и «токена доступа».

Но это не так, как публикация фотообъекта на странице Фотографии коллекция, о которой я думал, что вы спросили. Вы действительно хотите сделать обычную Почту на Странице с приложением «Изображение».

Вот некоторые ресурсы, чтобы сделать это:

  1. Facebook API Сообщение: http://developers.facebook.com/docs/reference/api/post/
  2. http://facebook.stackoverflow.com/questions/691425/how-do-you-post-to-the-wall-on-a-facebook-page-not-profile
  3. http://facebook.stackoverflow.com/questions/5756474/post-to-facebook-page-wall
  4. Using Facebook Graph to simply post a wall message with just javascript

Успехов!

+0

Вы получаете токен доступа к странице с вызовом API '/ me/accounts', тогда вы используете этот токен вместо обычного токена пользователя. (Просто добавьте 'access_token =' к вашему вызову, чтобы переопределить токен по умолчанию) – thaddeusmt

+0

Я добавил ссылку на пример кода, надеюсь, что это поможет. – thaddeusmt

+0

Я думаю, что вы на самом деле хотите сделать, это отправить изображение на свою ленту, что на самом деле просто создает сообщение с прикреплением изображения. Я добавил некоторые ссылки, чтобы помочь с этим. Cheers – thaddeusmt

Смежные вопросы