旧gaaamiiのブログ

間違ったことを書いている時があります。コメントやTwitter、ブコメなどでご指摘ください

iOSのSocialFrameworkを使う前にアカウントの設定をしておこう

iOS開発で「ツイートボタンを実装したい」という場面はよくあると思います。これについてサンプルコードをぐぐったりすると、ビューを生成したりする前に以下のような条件が書かれています。

if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeTwitter])

このisAvailableForServiceTypeですが、そのメソッド名の通り特定のサービスが利用可能かどうかを真偽値で返します。リファレンスにはこう書かれています。

Returns whether you can send a request for a particular service type. For the account to be available, the user must be logged into the social service in the device settings.

(特定のサービスタイプにリクエストを送れるどうかを返します。アカウントを有効にするには、ユーザーがデバイスの設定からサービスにログインしている必要があります。)

つまり、ログインしていないと使えないよということです。当たり前ですね。 iOSシミュレータでアカウントの設定をするには、実機と同じように「設定(Settings)」アプリを起動して使いたいサービスにログインすればオッケーです。

f:id:shgam:20140517115912j:plain

蛇足ですが、これをやるのに昨年に自分で撮ったスクリーンキャストがすごい役立ちました。ブログにしろスクリーンキャストにしろ、やったことはネット上に残しておくと便利ですね。


【Xcode4.6】「Twitter連携アプリ」iPhoneアプリ開発 入門者向けチュートリアル ...

参考