ios App:如何打开facebook链接并确保它在safari中打开而不是在本机应用程序中打开?

时间:2014-02-09 13:34:08

标签: ios facebook

在我的iOS应用中,我想在点击按钮后在Safari浏览器中打开某个Facebook页面。我以这种方式在应用程序中执行此操作:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://www.facebook.com/myapp"]];

如果设备上未安装原生facebook应用程序,则此方法有效。但如果是,Facebook应用程序打开而不是safari(它只显示应用程序中当前打开的任何内容,例如用户新闻源)。

我希望在任何情况下都会在Safari浏览器中打开网址(至少只要它不是关于篡改浏览器的越狱设备)。

我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:1)

我最终通过转发到www.fb.com而不是www.facebook.com来解决它

答案 1 :(得分:0)

这样做 -

NSString *facebookUrlString = @"http://www.facebook.com/facebook";

if ([[facebookUrlString pathComponents] count] > 0) {
    if ([[facebookUrlString pathComponents][1] isEqualToString:@"www.facebook.com"]) {
        NSMutableArray *pathComponents = [[facebookUrlString pathComponents] mutableCopy];
        [pathComponents replaceObjectAtIndex:1 withObject:@"facebook.com"];
        facebookUrlString = [NSString pathWithComponents:pathComponents];
    }
}
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:facebookUrlString]];