どうやら、私のTwitter oAuth(トークンリクエスト)の使用はiOS5では機能しません...iOS 5より下の何かにこのコードを保持し、iOS 5以降に新しいTwitterフレームワークを使用するにはどうすればよいですか?
iOSのバージョンを検出することは可能ですか?
ありがとう!
どうやら、私のTwitter oAuth(トークンリクエスト)の使用はiOS5では機能しません...iOS 5より下の何かにこのコードを保持し、iOS 5以降に新しいTwitterフレームワークを使用するにはどうすればよいですか?
iOSのバージョンを検出することは可能ですか?
ありがとう!
あなたは(ほとんど)iOS(あるいはフレームワーク)のバージョンを照会したくありません。それは(通常)あなたが間違った問題を解決していることを意味します。
この場合、本当に「Twitter.frameworkを使用できますか?」を知りたいと思います。
弱いリンクの魔法のおかげで、次のようなことを試すことができます。
if ([TWTweetComposeViewController canSendTweet]) {
// Do something
}
else {
// Use your original code
}
下位レベルのフレームワークコンポーネントを確認することもできます。例:
if ([TWRequest class]) {
// Do something
}
else {
// Use your original code
}
(明らかに、Twitter.frameworkに対してリンクし、必要なヘッダーを含める必要があります。)
if([[[UIDevice currentDevice] systemVersion] floatValue] >= 5.0) {
//tweet
}
何よりもまず、他の答えは正しいです。機能が存在するかどうかを確認するためにiOSのバージョン番号を使用することは避けてください。
ただし、iOSのバージョンを確認する正当な理由がある場合は、iOSのバージョン番号を確認するための私のこれまでのお気に入りの回答はこのStackOverflowの回答にあります。とてもエレガント。
TwitterクラスがインストールされたOSにあるかどうかを検出します。
if (NSClassFromString(@"TWTweetComposeViewController")) {
//use Twitter Framework
}
フレームワークのリストでTwitterフレームワークをオプションにすることを忘れないでください。