关于如何将twitter集成到您的应用中,关注这个伟大的tutorial。我知道程序员在iOS 5之前还有其他方式用于集成twitter,但我的问题是:
我的应用程序支持iOS 3.0+,所以如果我只使用iOS 5方式集成twitter,这将如何影响不使用iOS 5的用户?它会为他们工作吗?
谢谢!
答案 0 :(得分:5)
如果您只为iOS 5用户提供Twitter,那么您可以检查Twitter是否可用:
// Don't forget to import Twitter!
#import <Twitter/Twitter.h>
....
if([TWTweetComposeViewController class] != nil) {
// your code here
}
此外,请确保在添加Twitter框架时将其设置为可选。
答案 1 :(得分:4)
官方API框架不可行,因为twitter app / integration仅在iOS 5中可用
一个好的解决方案是使用ShareKit,这是一个免费的API,允许您集成Twitter,Facebook和其他社交网络支持。
答案 2 :(得分:2)
你应该研究DETweetComposeViewController。我们为此目的建造了它。它是与TWTweetComposeViewController的iOS4兼容的重新实现。
答案 3 :(得分:0)
使用弱链接和一些代码如下:
- (void)tweet
{
Class tweeterClass = NSClassFromString(@"TWTweetComposeViewController");
if(tweeterClass != nil) {
if([TWTweetComposeViewController canSendTweet]) {
TWTweetComposeViewController *tweetViewController = [[TWTweetComposeViewController alloc] init];
tweetViewController.completionHandler = ^(TWTweetComposeViewControllerResult result) {
if(result == TWTweetComposeViewControllerResultDone) {
}
[self dismissViewControllerAnimated:YES completion:nil];
};
[self presentViewController:tweetViewController animated:YES completion:nil];
} else {
#if !(TARGET_IPHONE_SIMULATOR)
[self displayAlert:@"You can't send a tweet right now, make sure your device has an internet connection and you have at least one Twitter account setup."];
#else
NSString *tweetString = [NSString stringWithFormat:@"http://mobile.twitter.com/home?status=%@%@", [self urlEncode:@"Check out this awesome pic: "] ,[self urlEncode:[_blobTweet.shortUrl absoluteString]]];
NSURL *tweetURL = [NSURL URLWithString:tweetString];
if ([[UIApplication sharedApplication] canOpenURL:tweetURL]) {
[[UIApplication sharedApplication] openURL:tweetURL];
}
#endif
}
} else {
// no Twitter integration could default to third-party Twitter framework
}
}
@end