Попытка отправить локальное изображение через ShareKit на Facebook - PullRequest
1 голос
/ 26 октября 2011

Я пытаюсь изменить ShareKit для отправки изображения из приложения iPhone на Facebook. Я также хочу предварительно заполнить поле ввода всплывающего окна общего доступа некоторым текстом и отправить URL-адрес. Я создал новый метод, чтобы сделать все это:

+ (SHKItem *)URL:(NSURL *)url title:(NSString *)title text:(NSString *)text picURL:(NSURL *)picURL
{
    SHKItem *item = [[SHKItem alloc] init];
    item.shareType = SHKShareTypeURL;
    item.URL = url;
    item.title = title;
    item.text = text;
    item.picURL = picURL;
    return [item autorelease];
}

Затем в методе отправки в SHKFacebook я проверяю, существует ли picURL, и отправляю в Facebook:

if (item.picURL) {
  dialog.attachment = [NSString stringWithFormat:
                          @"{\
                          \"name\":\"%@\",\
                          \"href\":\"%@\",\
                          \"media\":[{\"type\":\"image\",\
                          \"src\":\"%@\",\
                          \"href\":\"http://itunes.apple.com/us/app/XXXXXX/\"}]}",
                        item.title == nil ? SHKEncodeURL(item.URL) : SHKEncode(item.title),
                        SHKEncodeURL(item.URL),
                        SHKEncodeURL(item.picURL)
                        ];
        }

Все хорошо. Но у меня уже есть изображения в моем приложении для iPhone, и я бы предпочел не загружать их через Интернет.

Есть ли способ использовать UIImageJPEGRepresentation, чтобы включить изображение непосредственно в dialog.attachment выше? Я не могу понять это. Другие ответы на подобные вопросы связаны с поиском URL-адреса в сети.

Большое спасибо!

  • Jon

1 Ответ

1 голос
/ 26 октября 2011

Это, к сожалению, невозможно с ShareKit (я сам использовал ShareKit). В какой-то момент вам придется загрузить изображение куда-нибудь, будь то сервер изображений или Facebook - до вы можете поделиться изображением. (Не забудьте, поделиться изображением - это совсем другое, чем просто загрузить на Facebook)

В этом документе Facebook изложены принятые параметры, которые отражены в вашем вопросе: http://developers.facebook.com/docs/guides/attachments/ Как видите, для обмена медиа всегда требуется URL.

Я бы порекомендовал вам создать систему для себя, используя iOS SDK Facebook.

...