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 ) } 
  • Xcode 4为什么我在点击MainStoryBoard.storyboard时看到XML:看起来像一个bug
  • iOS模拟器游戏运行速度非常慢(低fps)
  • Xcodedebugging - 显示图像
  • 当我使用CocoaPods时,没有这样的模块
  • 从命令行构buildQt Xcode项目
  • 无法在乐器中启动我的应用程序:至less有一个目标无法启动
  • 在xcode 5.1的Arm64架构
  • 成功提交我的应用程序后,“太多符号文件”
  • 在Mountain Lion的Xcode 4.4中禁用消除锯齿字体
  • Xcode 6 iPhone模拟器应用程序支持位置
  • 在XCode上EXC_BAD_ACCESS中断?