私は自分のアプリにFacebookの共有ボタン、ツイートボタンを持っています。私のアプリは IOS 5.1 に対応しています。なのでツイッターなら問題なし。しかし、Facebookの共有ボタンをどのように操作すればよいですか。
アプリを実行している IOS デバイスが IOS6 を使用している場合、こちらにあるように、新しい方法を使用したいと考えています。
ただし、アプリが以前の IOS デバイスで実行されている場合。昔ながらの使い方をしたい。
誰でも私を助けることができますか?
敬具
私は自分のアプリにFacebookの共有ボタン、ツイートボタンを持っています。私のアプリは IOS 5.1 に対応しています。なのでツイッターなら問題なし。しかし、Facebookの共有ボタンをどのように操作すればよいですか。
アプリを実行している IOS デバイスが IOS6 を使用している場合、こちらにあるように、新しい方法を使用したいと考えています。
ただし、アプリが以前の IOS デバイスで実行されている場合。昔ながらの使い方をしたい。
誰でも私を助けることができますか?
敬具
SLComposeViewController
Facebook をサポートしているかどうか疑問に思っている場合は、確認してくださいisAvailableForServiceType
。
if ([SLComposeViewController class]) {
// once you know that they have iOS 6 or higher
// check if the account is setup
if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook])
{
// now we know we have a facebook account configure and logged in
}
} else {
// You don't have iOS 6 or higher
}
一般に、iOS のバージョンを確認するよりも、API (またはclass
弱いNSClassFromString
リンクのクラスのrespondsToSelector
場合、クラスに新しいバージョンの iOS で追加されたメソッドがある場合は ) を使用する方が適切です。詳細については、 iOS アプリ プログラミング ガイドの「iOSの複数バージョンのサポート」 セクションを参照してください。
次のコードを使用できます。
if([[[UIDevice currentDevice] systemVersion] intValue] == 6)
{
// your code for iOS 6
}
else
{
// your code for other iOS
}
手順は次のとおりです。まず、ソーシャル フレームワークを弱いリンクにします (オプションにします)。
次に、アプリが SLComposeViewController を使用できるかどうかを確認し、ユーザーが Facebook アカウントを設定しているかどうかを確認します。
if(NSClassFromString(@"SLComposeViewController") != nil)
{
if([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]])
{
//Add your SLComposeViewController code
}
}