昨日はアプリからスクリーンショットを撮る方法を説明した。
今日は、それを実際にTwitterやFacebookに投稿する方法について。
SLComposeViewController
ユーザにTwitterやFacebookに投稿するためのダイアログを出すだけならけっこう簡単で、SocialフレームワークのSLComposeViewControllerを使えばいいみたい。
(Socialフレームワークのリファレンスを見てみると、他にもクラスが用意されてるんだけど、今回は未調査)
例えば、Twitterにツイートするためのダイアログを出すなら、以下のような感じ。
// GameScene.swift import SpriteKit import Social class GameScene: TransitionableScene { // 省略 private func shareWithTwitter() { // 省略 // Twitterにツイートするためのダイアログを出すビューコントローラを生成 if let composeViewController = SLComposeViewController(forServiceType: SLServiceTypeTwitter) { // 初期テキストを設定 composeViewController.setInitialText(text) // 画像を追加 composeViewController.addImage(image) // ビューコントローラを表示させる self.view?.window?.rootViewController?.presentViewController(composeViewController, animated: true, completion: nil) } } // 省略 }
なお、Facebookの場合、SLComposeViewControllerのコンストラクタのforServiceType引数にSLServiceTypeFacebookを指定すればいい。
今日はここまで!