Создание постов на 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 ответ

  1. Если приложение FB установлено, вы не можете поделиться предварительно заполненным текстом
  2. Чтобы решить эту проблему, мы можем перейти к файлу 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()
    }
    
  3. Для подробного описания использования ShareKit проверьте мой другой ответ.

Другие вопросы по тегам