FBConnect: как отобразить стандартное диалоговое окно FB для публикации изображения и подписи? - PullRequest
1 голос
/ 04 февраля 2012

Я могу опубликовать изображение в FaceBook, без какого-либо взаимодействия с пользователем, таким образом:

    NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                                   facebookMessageTextView.text, @"message",
                                   imageToSend, @"source",
                                   nil];

    FBRequest *request = [facebook requestWithGraphPath:@"me/photos" andParams:params andHttpMethod:@"POST" andDelegate:self]; 

Теперь я хотел бы отобразить стандартный диалог FB, чтобы пользователь мог изменить заголовок и, возможно, принять решение опубликовать его на стене другого человека или отправить как личное сообщение. Например (из приложения iPhone на Facebook):

enter image description here

Мне не нужна кнопка камеры, поскольку передаваемое изображение не подлежит замене. Но я бы хотел, чтобы пользователь мог размещать сообщения на своей стене, на стене другого пользователя, изменять заголовки и конфиденциальность. Как бы я это сделал? И могу ли я также выбрать, чтобы отправить это изображение как личное сообщение?

ОБНОВЛЕНИЕ: я могу отправить фотографию, которая уже загружена в альбом пользователя (с помощью вышеуказанного кода), на временную шкалу их друга, используя это:

    NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                                   @"http://www.bitsonthego.com", @"link",
                                   [fbID objectForKey:@"id"], @"object_attachment",
                                   @"my profile", @"name",
                                   @"description", @"description",
                                   @"name of the post", @"name",
                                   @"caption of my post", @"caption",
                                   facebookMessageTextView.text, @"message",
                                   nil];

    [facebook requestWithGraphPath:@"/{friend's id}/feed" andParams:params andHttpMethod:@"POST" andDelegate:self]; 

Мне все еще не удается использовать диалоговое окно для указания друга в стандартном пользовательском интерфейсе Facebook, и, похоже, для этого мне придется написать собственный пользовательский интерфейс. Или

1 Ответ

0 голосов
/ 04 февраля 2012

С помощью API Graph Facebook (замена fbconnect) с разрешениями publish_stream вы можете публиковать только фотографии на стене пользователя или в альбоме пользователя.

Также API не позволяет отправлять личные сообщения. Я не знаю ни одного диалога iOS, который бы помог вам в этом.

Однако вы можете захотеть взглянуть на нечто, называемое намерениями, как оно называется в мире Android, где ваше приложение говорит, что я хочу позволить пользователю сделать это, и тогда ОС предоставит пользователю возможность выбрать ту программу, которую он хочет. сделать это, если есть несколько программ. Я нашел эту статью о S / O на iphone, эквивалентную намерениям Android для открытия других приложений . Может быть, там есть что-то, что вы можете использовать для iOS.

...