问题描述:
我一直在想,是否有可能发布一个应用程序,它包含新的iOS版本内置的新的Twitter和Facebook框架,但仍然可以部署到旧的iOS版本,如果iOS版本不正确,会不会有办法禁用该框架?<iOS 5的Twitter和Facebook API
答
在iOS 6中,你可以像这样很容易地进行整合。 例
- (IBAction)Facebook:(id)sender
{
if([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]) {
SLComposeViewController *controller = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
SLComposeViewControllerCompletionHandler myBlock = ^(SLComposeViewControllerResult result){
if (result == SLComposeViewControllerResultCancelled) {
NSLog(@"Cancelled");
} else
{
NSLog(@"Done");
}
[controller dismissViewControllerAnimated:YES completion:Nil];
};
controller.completionHandler =myBlock;
[controller setInitialText:@""];
[self presentViewController:controller animated:YES completion:Nil];
}
}
答
我建议你使用它提供了一个抽象了OS支持的水平Facebook SDK for iOS。
如果配置正确(例如,将新框架标记为可选,按照here),该操作将在较早版本的操作系统上运行,并在需要时退回到备用FB身份验证方法(例如通过FB应用程序或Web视图) 。
如果您的项目针对5.0之前的iOS版本进行编译,则建议您将Twitter设置为“可选”。和Facebook框架可选,如果您的项目编译的iOS版本早于6.0。 – Bala