OSX Swift ouvre l’URL dans le navigateur par défaut

Comment ouvrir une URL dans le navigateur par défaut du système en utilisant Swift comme langage de programmation et OSX comme plate-forme.

J’ai trouvé beaucoup avec UIApplication comme

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

mais cela ne fonctionne que sur iOS et non sur OSX

Et les services de lancement , que j’ai trouvés, n’ont aucun exemple de swift et il y a beaucoup de désapprobation pour OSX 10.10

Toute aide bienvenue – merci.

Swift 3 ou plus tard

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

Pour iOS, vous pouvez utiliser les éléments suivants:

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

Vous devez déballer NSURL.

Lorsque vous utilisez Swift 3 , vous pouvez ouvrir une page Web dans le navigateur par défaut en utilisant les éléments suivants:

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

Dans la réponse acceptée ci-dessus, vous pouvez également vérifier une URL en utilisant Swift 3 en entrant les éléments suivants:

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

J’espère que cette information aide quiconque à qui il s’applique.

Juste un bonus. Si vous souhaitez ouvrir une URL dans un navigateur spécifique (même un autre client pouvant gérer cette URL), voici le code Swift 3 testé sur Xcode 8.2.1 et macOS 10.12.2.

 /// appId: `nil` use the default HTTP client, or set what you want, eg Safari `com.apple.Safari` func open(url: URL, appId: Ssortingng? = nil) -> Bool { return NSWorkspace.shared().open( [url], withAppBundleIdentifier: appId, options: NSWorkspaceLaunchOptions.default, additionalEventParamDescriptor: nil, launchIdentifiers: nil ) } 

macOS:

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

iOS:

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

xCode 9 mise à jour

 let url = URL(ssortingng: "https://www.google.com")! UIApplication.shared.open(url, options: [:], completionHandler: nil)