Создание постов на Facebook в игре SpriteKit
У меня, наверное, довольно глупый вопрос. Я работаю над игрой SpriteKit и хочу, чтобы пользователи могли делиться своими рекордами на Facebook и Twitter. Сообщения должны содержать текст и изображение. Код, который у меня есть, работает с Twitter, но не с Facebook, и я понятия не имею, почему.. Вот часть Facebook:
#import <Social/Social.h>
...
SLComposeViewController *facebookSheet = [SLComposeViewController composeViewControllerForServiceType: SLServiceTypeFacebook];
facebookSheet.completionHandler = ^(SLComposeViewControllerResult result) {
switch(result) {
case SLComposeViewControllerResultCancelled:
break;
case SLComposeViewControllerResultDone:
break;
}
};
[facebookSheet setInitialText:[_playerName stringByAppendingString: @" has a new Highscore"]];
[facebookSheet addImage:[UIImage imageNamed:_HighscoreImage]];
UIViewController *controller = self.view.window.rootViewController;
[controller presentViewController:facebookSheet animated: YES completion:nil];
1 ответ
- Если приложение FB установлено, вы не можете поделиться предварительно заполненным текстом
Чтобы решить эту проблему, мы можем перейти к файлу FBSDKSharKit.Install FBSDK.
if UIApplication.sharedApplication().canOpenURL(NSURL(string: "fb:")!) { let content : FBSDKShareLinkContent = FBSDKShareLinkContent() content.contentURL = NSURL(string: "https://google.com") content.contentTitle = "Test" content.contentDescription = "FBSDKShareKit is an alternative to this issue" content.imageURL = NSURL(string:"https://pixabay.com/static/uploads/photo/2015/10/01/21/39/background-image-967820_960_720.jpg") let ShareKit: FBSDKShareDialog = FBSDKShareDialog() ShareKit.fromViewController = self; ShareKit.shareContent = content ShareKit.mode = FBSDKShareDialogMode.FeedBrowser ShareKit.show() }
Для подробного описания использования ShareKit проверьте мой другой ответ.