2

どうやら、私のTwitter oAuth(トークンリクエスト)の使用はiOS5では機能しません...iOS 5より下の何かにこのコードを保持し、iOS 5以降に新しいTwitterフレームワークを使用するにはどうすればよいですか?

iOSのバージョンを検出することは可能ですか?

ありがとう!

4

4 に答える 4

6

あなたは(ほとんど)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に対してリンクし、必要なヘッダーを含める必要があります。)

于 2012-04-04T08:21:23.630 に答える
1
if([[[UIDevice currentDevice] systemVersion] floatValue] >= 5.0) {
   //tweet
}
于 2012-04-04T08:17:45.453 に答える
1

何よりもまず、他の答えは正しいです。機能が存在するかどうかを確認するためにiOSのバージョン番号を使用することは避けてください。

ただし、iOSのバージョンを確認する正当な理由がある場合は、iOSのバージョン番号を確認するための私のこれまでのお気に入りの回答はこのStackOverflowの回答にあります。とてもエレガント。

于 2012-04-04T16:18:47.393 に答える
0

TwitterクラスがインストールされたOSにあるかどうかを検出します。

if (NSClassFromString(@"TWTweetComposeViewController")) {
   //use Twitter Framework
}

フレームワークのリストでTwitterフレームワークをオプションにすることを忘れないでください。

于 2012-04-04T08:21:27.223 に答える