这可能是一个相当明显的问题,但你能从 iPhone 应用程序启动 Safari 浏览器吗?
UIApplication 有一个名为 openURL 的方法:
例如:
NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"]; if (![[UIApplication sharedApplication] openURL:url]) { NSLog(@"%@%@",@"Failed to open url:",[url description]); }
应采取以下措施:
你可以用这个打开 Safari 中的 url:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://www.google.com"]];
也许有人可以用斯威夫特的版本:
在雨燕2.2中:
UIApplication.sharedApplication().openURL(NSURL(string: "https://www.google.com")!)
3.0版本:
UIApplication.shared().openURL(URL(string: "https://www.google.com")!)
对于 iOS10,我们有一种与 完成处理程序不同的方法:
目标 C:
NSDictionary *options = [NSDictionary new]; //options can be empty NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"]; [[UIApplication sharedApplication] openURL:url options:options completionHandler:^(BOOL success){ }];
斯威夫特:
let url = URL(string: "http://www.stackoverflow.com") UIApplication.shared.open(url, options: [:]) { (success) in }
在 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)") }) } }
在“迅速4”和“迅速5”中,随着 OpenURL 的贬值,一个简单的方法就是
if let url = URL(string: "https://stackoverflow.com") { UIApplication.shared.open(url, options: [:]) }
你也可以使用 SafariServices。类似于你的应用程序中的 Safari 窗口。
SafariServices
import SafariServices ... if let url = URL(string: "https://stackoverflow.com") { let safariViewController = SFSafariViewController(url: url) self.present(safariViewController, animated: true) }