ShareKit iOS - разный контент для разных платформ
Я пытаюсь использовать ShareKit, чтобы поделиться по электронной почте строкой HTML и поделиться на Facebook обычным потоком, содержащим изображение и текст.
В примере проекта просто показано, как поделиться одной и той же информацией для каждой платформы (Twitter, Facebook, электронная почта), но я хочу иметь возможность обмениваться различным контентом в зависимости от платформы.
SHKItem *item = [SHKItem image:image title: @"title"];
item.text = @"share text";
SHKActionSheet *actionSheet = [SHKActionSheet actionSheetForItem:item];
есть идеи?
2 ответа
Я искал что-то подобное и нашел это в документации ShareKit: http://www.getsharekit.com/docs/
То, что вы ищете (я полагаю) - это предоставление доступа конкретному поставщику услуг, а не использование этого интерфейса листа действий. Вот что я сделал, чтобы создать разный контент для разных платформ.
Код:
#import "SHKFacebook.h"
#import "SHKTwitter.h"
...
- (IBAction)shareOnFacebook {
// Create an image item
SHKItem *item = [SHKItem image:[UIImage imageNamed:@"myImage.png"] title:@"A Girraffe!"];
// Share the item on Facebook
[SHKFacebook shareItem:item];
return;
}
- (IBAction)shareOnTwitter {
// Create a text item
NSString *someText = @"This is a blurb of text I highlighted from a document.";
SHKItem *item = [SHKItem text:someText];
// Share the item on Twitter
[SHKTwitter shareItem:item];
return;
}
Надеюсь это поможет! Одед.
Мой собственный опыт: я преуспел в том, чтобы делиться только URL-адресами в Twitter, а также делиться URL-адресами и изображениями в Facebook
Что я сделал: я переписал некоторые методы экземпляра SHKItem, такие как:
//original
SHKItem *item = [SHKItem image:image title: @"title"];
//new version
SHKItem *item = [SHKItem image:image url:aURL title: @"title"];
и другие связанные методы. Таким образом, всякий раз, когда я создавал экземпляр SHKItem, я мог бы передавать URL-адреса и изображения следующим классам, которые будут решать проблемы совместного использования.