如何从iPhone应用程序启动Safari?

时间:2009-05-04 23:23:51

标签: ios safari launch

这可能是一个相当明显的问题,但您可以从iPhone应用程序启动Safari浏览器吗?

7 个答案:

答案 0 :(得分:201)

应该是以下内容:

NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"];

if (![[UIApplication sharedApplication] openURL:url]) {
    NSLog(@"%@%@",@"Failed to open url:",[url description]);
}

答案 1 :(得分:53)

UIApplication有一个名为openURL的方法:

示例:

NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"];

if (![[UIApplication sharedApplication] openURL:url]) {
  NSLog(@"%@%@",@"Failed to open url:",[url description]);
}

答案 2 :(得分:16)

您可以使用以下命令打开safari中的网址:

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

答案 3 :(得分:4)

对于iOS 10,我们有一个不同的方法和完成处理程序:

的ObjectiveC:

NSDictionary *options = [[NSDictionary alloc] init];
//options can be empty
NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"];
[[UIApplication sharedApplication] openURL:url options:options completionHandler:^(BOOL success){
}];

答案 4 :(得分:2)

也许有人可以使用Swift版本:

在swift 2.2中:

UIApplication.sharedApplication().openURL(NSURL(string: "https://www.google.com")!)

和3.0:

UIApplication.shared().openURL(URL(string: "https://www.google.com")!)

答案 5 :(得分:1)

在Swift 3.0中,您可以使用此类来帮助您进行通信。框架维护者已经弃用或删除了以前的答案。

import UIKit

class InterAppCommunication {
    static func openURI(_ URI: String) {
        UIApplication.shared.open(URL(string: URI)!, options: [:], completionHandler: { (succ: Bool) in print("Complete! Success? \(succ)") })
    }
}

答案 6 :(得分:1)

在swift 4中,随着OpenURL的折旧,一个简单的方法就是

if let url = URL(string: "https://stackoverflow.com") {
UIApplication.shared.open(url, options: [:]) }