Swiftをプログラミング言語として、OSXをプラットフォームとして使用して、システムのデフォルトブラウザーでURLを開く方法。
私はUIApplicationでたくさん見つけました
UIApplication.sharedApplication().openURL(NSURL(string: object.url))
しかし、これはOSXではなくiOSでのみ動作します
そして、 Launch Services 、Swiftの例がなく、OSX 10.10で非推奨になったものがたくさんあります
任意のヘルプ歓迎-ありがとう。
Swift 3以降
import Cocoa
let url = URL(string: "https://www.google.com")!
if NSWorkspace.shared.open(url) {
print("default browser was successfully opened")
}
MacOSの場合、これを使用できます。
let url = URL(string: "https://www.stackoverflow.com")!
NSWorkspace.sharedWorkspace().openURL(url))
IOSの場合、次を使用できます。
let url = NSURL(string: "https://google.com")!
UIApplication.sharedApplication().openURL(url)
NSURLをアンラップする必要があります。
マックOS:
NSWorkspace.sharedWorkspace().openURL(NSURL(string: "https://google.com")!)
iOS:
UIApplication.sharedApplication().openURL(NSURL(string: "https://google.com")!)
Swiftを使用する場合、次を使用してデフォルトのブラウザーでWebページを開くことができます。
NSWorkspace.shared().open(NSURL(string: "https://google.com")! as URL)
上記の受け入れられた回答では、次を入力してSwiftを使用してURLを確認することもできます。
if let checkURL = NSURL(string: "https://google.com") {
if NSWorkspace.shared().open(checkURL as URL) {
print("URL Successfully Opened")
}
} else {
print("Invalid URL")
}
この情報が誰にでも役立つことを願っています。
xCode 9アップデート
let url = URL(string: "https://www.google.com")!
UIApplication.shared.open(url, options: [:], completionHandler: nil)
ただのボーナス。 特定のブラウザでURLを開く(そのURLを処理できる他のクライアントであっても)したい場合は、Xcode 8.2.1およびmacOSでテストされたSwiftコードがあります10.12.2。
/// appId: `nil` use the default HTTP client, or set what you want, e.g. 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
)
}
Swift 5、Xcode 1およびMAC OSの場合:
NSWorkspace.shared.open(NSURL(string: "http://www.lichess.org")! as URL)
MacOS Xcode 10 Swift 4.2アップデート
NSWorkspace.shared.open(URL(string: "https://www.google.com")!)