OSX Swift在默认浏览器中打开URL

如何通过使用Swift作为编程语言和OSX作为plattform在系统默认浏览器中打开一个url。

我发现很多与UIApplication一样

UIApplication.sharedApplication().openURL(NSURL(string: object.url)) 

但是这只适用于iOS而不适用于OSX

我发现启动服务没有快速的例子,OSX 10.10有很多不推荐的例子

欢迎任何帮助 – 谢谢。

5 Solutions collect form web for “OSX Swift在默认浏览器中打开URL”

Xcode 8.1•Swift 3.0.1

 import Cocoa if let url = URL(string: "https://www.google.com"), NSWorkspace.shared().open(url) { print("default browser was successfully opened") } 

对于iOS,您可以使用以下内容:

  let url = NSURL(string: "https://google.com")! UIApplication.sharedApplication().openURL(url) 

你必须解开NSURL。

 NSWorkspace.sharedWorkspace().openURL(NSURL(string: "https://google.com")!) 

要么

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

使用Swift 3时 ,可以使用以下方法在默认浏览器中打开一个网页:

 NSWorkspace.shared().open(NSURL(string: "https://google.com")! as URL) 

在上面接受的答案中,您也可以使用Swift 3通过input以下内容来检查URL:

 if let checkURL = NSURL(string: "https://google.com") { if NSWorkspace.shared().open(checkURL as URL) { print("URL Successfully Opened") } } else { print("Invalid URL") } 

我希望这些信息能够帮助任何人适用。

只是一个奖金。 如果你想在一个特定的浏览器 (甚至是其他可以处理该URL的客户端)中打开一个URL ,这里是在Xcode 8.2.1和macOS 10.12.2上testing的Swift 3代码。

 /// appId: `nil` use the default HTTP client, or set what you want, eg Safari `com.apple.Safari` func open(url: URL, appId: String? = nil) -> Bool { return NSWorkspace.shared().open( [url], withAppBundleIdentifier: appId, options: NSWorkspaceLaunchOptions.default, additionalEventParamDescriptor: nil, launchIdentifiers: nil ) } 
  • 为什么Emacs / Vim / Textmate? Xcode不够好吗?
  • 这个行动无法完成。 再试一次(-22421)
  • iOS应用程序的非英语默认语言?
  • 无法加载设备上运行的捆绑软件中从nib引用的映像
  • 添加谷歌地图作为子视图与exc_bad崩溃的iOS应用程序
  • 反编译Objective-C库
  • Xcodeunit testing用Cocoapods
  • IOS:复制文件夹中的文件
  • 我如何看到我正在使用哪个版本的Swift?
  • UISlider捕捉固定数量的步骤(如iOS 7设置应用中的文本大小)
  • Xcode - 错误ITMS-90635 - 捆绑中的Mach-O无效 - 提交到App Store