显然,我对 Twitter oAuth(令牌请求)的使用在 iOS 5 中不起作用......我如何为 iOS 5 以下的任何内容保留此代码并使用适用于 iOS 5+ 的新 Twitter 框架?
是否可以检测 iOS 版本?
谢谢!
显然,我对 Twitter oAuth(令牌请求)的使用在 iOS 5 中不起作用......我如何为 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 类是否在已安装的操作系统中:
if (NSClassFromString(@"TWTweetComposeViewController")) {
//use Twitter Framework
}
不要忘记在框架列表中将 Twitter 框架设为可选。