Facebook publish_actions к временной шкале для iOS
После поиска в документации / ошибках разработчика Facebook и вопросов на stackru.com, неясно, поддерживает ли Facebook сейчас publish_actions для временной шкалы через iOS SDK. На этом сайте есть несколько вопросов, касающихся разрешения на публикацию на мобильных устройствах, но они не предоставляют никакого решения.
- Facebook развернул publish_actions для мобильных устройств для всех сторонних приложений или все еще ограничен разработчиками?
- Позволяет ли Facebook публиковать действия на временной шкале через разрешение publish_actions через iOS SDK?
- Существуют ли примеры, примеры кода или учебные пособия, которые объясняют, как добиться этого на iOS?
Буду признателен за любые указатели.
3 ответа
Да. Публикация действий работает в iOS точно так же, как в настольных сетях, мобильных сетях и в Android.
Метод запроса разрешения publish_actions такой же, как и для запроса любого другого разрешения.
Метод публикации действий - это тот же вызов API API, что и для любой платформы:
POST https://graph.facebook.com/me/APP_NAMESPACE:ACTION_NAME?OBJECT_NAME=OBJECT_URL&access_token=TOKEN
например
POST https://graph.facebook.com/me/myapp:cook?recipe=http://exmaple.com/recipe&access_token=TOKEN
В Objective C у вас может быть что-то вроде
AppDelegate *delegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
[[delegate facebook] requestWithGraphPath:@"me/myapp:cook" andParams:@"http://exmaple.com/recipe" forKey:@"recipe"] andHttpMethod:@"POST" andDelegate:self];
Нет, publish_action
не будет поддерживать публикацию в сроки. Вы должны добавить новый тег, как fb:explicitly_shared
, Установите это как BOOL
значение. Если вы установите true
, он будет отображаться на временной шкале пользователя, иначе он не будет.
Я не могу сделать эту работу. Я уже получил свое действие от Facebook, поэтому образец был отправлен из CURL, но из IOS я всегда получаю ошибку домена 1000.
Вот мой код:
NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
@"http://itunes.apple.com/us/app/ginos-challenge/id509946175",@"og.url",
@"Played on Gino's challenge",@"og:title",
@"http://media.appspy.com/thumbs/images/icons/i509946175_jpg_180x180_q85.jpg",@"og:image",
@"This is my first post",@"og:description",
@"1000", @"game_point",
nil];
// Publish.
// This is the most important method that you call. It does the actual job, the message posting.
[facebook requestWithGraphPath:@"me/[action domain]:[action name]" andParams:params andHttpMethod:@"POST" andDelegate:self];