Sie kennen doch https:, oder? Das ist ein URL-Schema. Dank anderer, die in der Frontend-Entwicklung vorkommen, wie z.B. mailto:, sind Sie wahrscheinlich mit dem Konzept vertraut. Sie können tatsächlich Ihre eigenen erstellen, was ziemlich cool ist. Es gibt sehr viele davon.
Ich stelle fest, dass benutzerdefinierte URL-Schemata am häufigsten bei Apps vorkommen, die sowohl Web-Apps als auch native Apps sind. Zum Beispiel zwei, die ich fast jeden Tag benutze: Notion und Figma. Ich *liebe* es, dass die Dinge, an denen ich in diesen Apps arbeite, URLs haben. URLs für alles! 🎉
Und doch. Wenn ich die URL zu einer Notion-Seite abgreife, was ich regelmäßig tue, um sie mit Kollegen zu teilen, erhalte ich eine URL wie...
https://www.notion.so/csstricks/...
Das ist in Ordnung und funktioniert, um diese Notion-Seite im Browser zu öffnen. Aber ich bevorzuge Notion-die-native-App. Es ist Electron, also ist es immer noch eine Web-App, nehme ich an, aber ich benutze es nicht über meinen Webbrowser, ich benutze es über die Anwendung Notion.app auf meiner tatsächlichen Maschine.
Geoff hat mir neulich einen Artikel geteilt, der dokumentiert, wie einfach es ist, eine Browser-URL einer Anwendung so zu ändern, dass sie stattdessen in der nativen App geöffnet wird.
Glücklicherweise hat das Notion-Entwicklerteam darüber nachgedacht und das Protokoll
Thomas Frank, „How to Share Notion Links That Open Directly in the App“notion://entwickelt. Wenn Sie denhttps://-Teil jeder Notion-Seiten-URL durchnotion://ersetzen, wird Ihre URL automatisch in der nativen App anstatt in einem Webbrowser geöffnet.
Es ist großartig, dass das native Schema im Wesentlichen dasselbe ist wie das Webschema, abgesehen vom Namen. Thomas geht hier sehr tief auf Methoden ein, um den Inhalt der Zwischenablage zu ändern, um Notion-Links durch das benutzerdefinierte Schema zu ersetzen.
Ich wollte nur eine Methode hervorheben, die meiner Meinung nach gut für mich funktioniert. Der Trick besteht nicht darin, die Links selbst zu ändern, sondern auf Links zu reagieren, von denen Sie wissen, dass es sich um Notion-Links handelt, indem Sie sie zum Öffnen in Notion.app umleiten.
Der Trick ist auf Macs Choosy

Ich bevorzuge es, Choosy so einzurichten, dass es mich nie fragt, welchen Browser ich verwenden möchte, sondern es einfach basierend auf Regeln tut. Unter den Einstellungen habe ich eine Reihe von Apps eingerichtet.

Für Notion überwache ich Links zu Notion und lasse sie Notion öffnen... das war's!

Die anderen Apps machen im Grunde genau dasselbe. Funktioniert super.
Eine Einschränkung gibt es jedoch! Einmal im blauen Mond muss ich hierher kommen und bestimmte Anwendungen deaktivieren. Zum Beispiel könnte ein Passwort-Zurücksetzungsfluss mich zu slack.com oder so etwas schicken, für eine bestimmte Seite als Teil des Ablaufs, die nur über das Web verfügbar ist. Wenn Choosy sein Ding macht, versucht es, diese Seite in Slack.app zu öffnen, was es nicht kann, und man kann irgendwie gefangen sein. Also muss ich hierher kommen und es vorübergehend deaktivieren.
Der neue Chromium Edge hat eines dieser Protokolle –
microsoft-edge:, das einen Link in einem Edge-Fenster öffnet.Dies ist nützlich, da mit dem Auslaufen von IE11 und Edge als praktikable Alternative, Sie überprüfen können, ob der Browser IE 11 ausführt, und dann die Seite automatisch in Edge öffnen, wo sie ordnungsgemäß unterstützt würde. Hier ist ein kleiner Ausschnitt, der das tut.
IE 11 verhält sich bereits ähnlich, wenn er YouTube, Facebook oder andere große Websites verarbeitet (wenn Sie IE11 noch haben, versuchen Sie, eine dieser Websites in diesem Browser zu laden). Ich würde die folgende Methode immer noch mit Vorsicht verwenden, da ich mir nicht sicher bin, ob dies für die Produktion gut ist, aber wenn der Browser dies bereits nativ tut, dann ist es vielleicht in Ordnung.
Sie können die Konsole verwenden, um neue URL-Schemata in Firefox zu erstellen, aber es muss web+ihrschema sein.
https://developer.mozilla.org/en-US/docs/Web/API/Navigator/registerProtocolHandler
Dann können Sie das Schema so einrichten, dass es jede gewünschte App in about:preferences > Applications öffnet.
Sie können auch bestehende URL-Schemata ändern. Zum Beispiel: Ich habe "tel:" so geändert, dass es Telefonnummern in WhatsApp Web öffnet, wie hier: https://web.whatsapp.com/send?phone=%s
Auf diese Weise kann ich tel:99999999 eingeben und eine Nachricht an eine Nummer senden, ohne die Kontaktperson überhaupt in mein Adressbuch aufnehmen zu müssen.