Entdecken Sie die Schritte, um Ihre Cocoa-Anwendung zum Standard-Webbrowser auf macOS zu machen. Von der Konfiguration der URL-Schemata bis zur Nutzung von Launch Services erfahren Sie, wie Sie die Benutzererfahrung optimieren.
---
Dieses Video basiert auf der Frage https://stackoverflow.com/q/49510/ gestellt von dem Nutzer 'georgebrock' ( https://stackoverflow.com/u/5168/ ) sowie auf der Antwort https://stackoverflow.com/a/49512/ bereitgestellt von dem Nutzer 'georgebrock' ( https://stackoverflow.com/u/5168/ ) auf der Website 'Stack Overflow'. Vielen Dank an diese großartigen Nutzer und die Stackexchange-Community für ihre Beiträge.
Besuchen Sie diese Links, um den Originalinhalt und weitere Details zu sehen, z. B. alternative Lösungen, aktuelle Entwicklungen zum Thema, Kommentare, Versionsverlauf usw. Der ursprüngliche Titel der Frage lautete beispielsweise: How do you set your Cocoa application as the default web browser?
Außerdem steht der Inhalt (außer Musik) unter der Lizenz CC BY-SA https://meta.stackexchange.com/help/l...
Der ursprüngliche Fragenbeitrag steht unter der Lizenz 'CC BY-SA 2.5' ( https://creativecommons.org/licenses/... ), und der ursprüngliche Antwortbeitrag steht unter der Lizenz 'CC BY-SA 3.0' ( https://creativecommons.org/licenses/... ).
Falls Ihnen irgendetwas auffällt oder Unstimmigkeiten bestehen, schreiben Sie mir bitte an vlogize [AT] gmail [DOT] com.
---
So legen Sie Ihre Cocoa-Anwendung als Standard-Webbrowser in macOS fest
Die Erstellung eines Webbrowsers klingt vielleicht einschüchternd, aber was, wenn Ihre Cocoa-Anwendung diese Rolle übernehmen soll? Ihre Anwendung als Standard-Webbrowser in macOS festzulegen ist nicht nur machbar, sondern ermöglicht es auch, die Benutzererfahrung zu verbessern, indem HTTP- und HTTPS-Links nahtlos geöffnet werden. In diesem Blogbeitrag führen wir Sie durch die wesentlichen Schritte, um dies zu erreichen.
Das Problem
Wenn Benutzer in Anwendungen wie Mail oder iChat auf einen Weblink klicken, wird ihr Standard-Webbrowser geöffnet. Wenn Sie eine Cocoa-Anwendung entwickeln und möchten, dass diese die Links öffnet, müssen Sie Ihre App so konfigurieren, dass sie HTTP- und HTTPS-Links verarbeitet und als Standardbrowser eingestellt wird.
Die Lösung
Um Ihre Cocoa-Anwendung zum Standard-Webbrowser zu machen, können Sie diese vier Schritte befolgen:
1. Fügen Sie URL-Schemata zur Info.plist Ihrer Anwendung hinzu
Ihr erster Schritt ist es, macOS mitzuteilen, dass Ihre Anwendung HTTP- und HTTPS-Anfragen verarbeiten kann. Dies geschieht durch Ändern der Datei Info.plist. So geht’s:
Öffnen Sie die Info.plist Datei Ihrer Anwendung.
Fügen Sie folgendes XML-Snippet hinzu:
[[Siehe Video, um diesen Text oder Codeausschnitt anzuzeigen]]
Mit dieser Ergänzung erklären Sie, dass Ihre App beide URL-Schemata verarbeiten kann.
2. Schreiben Sie eine URL-Handler-Methode
Als nächstes müssen Sie eine Methode erstellen, die aufgerufen wird, wenn Ihre Anwendung eine URL öffnen soll. Hier ein einfaches Beispiel:
[[Siehe Video, um diesen Text oder Codeausschnitt anzuzeigen]]
In dieser Methode implementieren Sie später die Logik zur Verarbeitung der URL.
3. Registrieren Sie die URL-Handler-Methode
Nachdem Sie Ihre URL-Handler-Methode erstellt haben, registrieren Sie diese beim macOS Event Manager. Fügen Sie dazu folgenden Code im Initialisierungsabschnitt Ihrer Anwendung ein:
[[Siehe Video, um diesen Text oder Codeausschnitt anzuzeigen]]
Um auch ältere Anwendungen zu unterstützen, registrieren Sie sich zusätzlich für das WWW!/OURL Apple Event:
[[Siehe Video, um diesen Text oder Codeausschnitt anzuzeigen]]
4. Setzen Sie Ihre App als Standard-Browser
Abschließend müssen Sie Ihre App als Standard-Handler für die URL-Schemata HTTP und HTTPS mithilfe der Launch Services API festlegen. Verwenden Sie folgenden Code:
[[Siehe Video, um diesen Text oder Codeausschnitt anzuzeigen]]
Tipp: Es ist ratsam, den Benutzer um Erlaubnis zu fragen, bevor Sie die Standardeinstellungen für den Browser ändern.
Eigene URL-Schemata
Neben den Standard-URL-Schemata können Sie auch eigene benutzerdefinierte Schemata einführen. Um Konflikte mit anderen Anwendungen zu vermeiden, empfiehlt es sich, Ihr eigenes Schema auf der Bundle-ID Ihrer App aufzubauen. Wenn Ihre Bundle-ID zum Beispiel com.example.MyApp ist, könnten Sie Konfigurationen wie x-com-example-myapp:// verwenden.
Fazit
Mit dieser einfachen Anleitung können Sie Ihre Cocoa-Anwendung zum Standard-Webbrowser für macOS-Nutzer machen. Dies steigert nicht nur die Funktionalität Ihrer Anwendung, sondern bietet den Benutzern auch ein besser integriertes Web-Erlebnis. Denken Sie stets daran, die Einwilligung der Nutzer einzuholen, wenn Sie Standard-Einstellungen ändern, um einen reibungslosen Übergang zu gewährleisten.
Zögern Sie nicht, Fragen zu stellen oder Kommentare zu hinterlassen, falls Sie bei der Umsetzung auf Probleme stoßen!
Информация по комментариям в разработке