Erzwinge das Öffnen von Links in der App, nicht im Standardbrowser

16

Zum Beispiel bekomme ich eine E-Mail von Pinterest mit interessanten Links für die Woche. Wenn ich auf eine Stecknadel klicke, wird diese in Chrome und nicht in der Pinterest-App geöffnet. Dies ist bei einigen Apps der Fall und wir haben uns gefragt, ob es eine Möglichkeit gibt, die Verknüpfung mit einer bestimmten Funktion zu öffnen.

Ist es möglich, das Öffnen der Links in der jeweiligen Anwendung und nicht im Standardbrowser (z. B. Chrome) zu erzwingen?

user26671
quelle

Antworten:

13

Apps können das Öffnen von Links über die App mithilfe einer API anfordern, die als "Absichtsfilter" bezeichnet wird.

Wenn die App über den richtigen Absichtsfilter verfügt, werden Sie aufgefordert, den Link mit dieser App zu öffnen, und die App wird dann etwas damit tun.

Dies muss vom App-Entwickler eingegeben werden, und es gibt keine Möglichkeit, es selbst zu implementieren, es sei denn, Sie dekompilieren die App und fügen sie hinzu.

Ein Beispiel für eine App, die dies ausführt, ist die Google+ App.

Liam W
quelle
2
Weitere Beispiele sind: Twitter, Google Maps, Foursquare. Es kommt also ganz auf die App-Entwickler an.
Ale
2
Ich finde es seltsam, dass die Google Mail-App das nicht tut. Beispiel: Klicken Sie in Chrome für Android auf die Registerkarte "Zuletzt verwendet", auf der eine E-Mail auf dem Chrome-Desktop angezeigt wird. In diesem Fall ist es sinnvoll, diese E-Mail in der Google Mail-App zu öffnen.
Avernet
Könnten Sie bitte eine Dokumentation oder weitere Informationen zum Vorsatzfilter bereitstellen? Vielen Dank, Sie werden wahrscheinlich mehr Anerkennung für diese sehr hilfreiche Antwort erhalten.
1984
6

Diese Hilfsprogramm-App öffnet Facebook-, Twitter-, Instagram-, GitHub- und Goodreads-Links in ihren Apps anstelle des Browsers: Link in App öffnen

Pinterest wird noch nicht unterstützt, aber wenn Sie technisch versiert sind, können Sie ganz einfach neue Apps hinzufügen und müssen keinen Code schreiben! Details im GitHub-Repo .

Ryan
quelle
1
Ich habe Open Link in der App installiert und es funktioniert! Ich habe eine Datenbank-App und ein Feld für die URL in einer der Tabellen hinzugefügt und es immer im Browser geöffnet. Ich danke Ihnen für das Teilen.
Mr. Xymon
Dies funktioniert jedoch nicht mit Firefox in Android?
Endolith
1

Wenn die Links standardmäßig in Chrome geöffnet wurden, musste ich nur zu "Einstellungen" -> "Apps" -> "Als Standard festlegen" wechseln, die Chrome-App auswählen und auf "OK" klicken Clear defaults.

Das nächste Mal, als ich auf den Link geklickt habe, hat mich das Telefon Open withmit nur zwei Optionen gefragt : Chrome und Samsung Internet Browser. Wenn ich mich dann für Chrome entscheide, taucht Just oncedas Open withaber diesmal mit 3 Optionen auf: Pinterest, Chrome & Samsung Internet Browser. Ich habe Pinterest gefolgt von gewählt Alwaysund das war's.

Ich weiß nicht warum, aber das hat funktioniert.

Jeena
quelle
Ich verwende Pinterest nicht, aber ich vermute, dass der erste Link eine verkürzte / kompakte URL ist, die von der Pinterest-App nicht erkannt wird. Der Browser leitet dann zu dem Link weiter, der jetzt von der Pinterest-App erkannt wird zusätzliche Option auf dem 2. Link. (Weitere Informationen zur Funktionsweise finden Sie in der vorhandenen Antwort )
Andrew T.
0

Im Allgemeinen können Sie es nicht tun. Der Grund für das Öffnen von Links in einem Browser besteht darin, dass dieselben Protokolle wie bei normalen Weblinks verwendet werden. Wenn es sich bei der jeweiligen App also nicht um einen Browser handelt, müssen die Links mit einer Browser-App geöffnet werden.

Möglicherweise haben Sie jedoch gesehen, dass einige Links (insbesondere Links zu Android-Apps auf dem Markt) mit der Android Market / Google Play Store-App geöffnet werden können. Dies ist möglich, weil diese Links market://in ihren Links eher als typisch verwendet werdenhttp://

Wenn Sie dies bestätigen müssen, versuchen Sie, die Standardeinstellungen Ihres Chrome-Browsers zu löschen. Sie müssen dann eine App auswählen, um einen Link zu öffnen, wenn Sie darauf klicken. Dies gibt Ihnen einen offenen Link mit der Option (natürlich, um die Browser-Apps zu verwenden)

Rufen Sie dazu Settings -> Appsdie Chrome-App auf und wählen Sie sie aus. Scrollen Sie nach unten und suchen Sie eine Schaltfläche zum Löschen der Standardeinstellungen. Klicken Sie darauf.

Sid
quelle
4
Das stimmt eigentlich nicht. Eine App kann die Absicht registrieren, eine URL zu öffnen, auch wenn sie verwendet wird http. Die Play Store-App verarbeitet beispielsweise sowohl http://play.google.com/store/apps/details?id=fooLinks als auch market://Links.
Dan Hulme
-3

Die Entwickler der Apps sind diejenigen, die der App über ein Update einen Browser hinzufügen. Wenn der App-Entwickler der Pinterest-App keine Browserfunktion hinzugefügt hat, können externe Links in der App nicht geöffnet werden.

Wenn Entwickler der App einen Browser hinzufügen, können Sie auswählen, ob Sie die Standard-App auf Ihrem Gerät oder den integrierten App-Browser verwenden möchten.

Chris
quelle
2
Ich glaube nicht, dass dies genau das ist, wonach der Fragesteller sucht. Bei der Frage geht es nicht um Apps mit einem integrierten Browser, sondern darum, mit der App Inhalte aus dieser App zu öffnen, anstatt einen Browser zu öffnen und die Website der App aufzurufen. In diesem Beispiel befindet sich der Link in Google Mail, und der Fragesteller möchte den Pinterest-Inhalt mit der Pinterest-App öffnen, nicht mit einem Webbrowser. Es ist kein "reduzierter" Browser, der in eine App integriert ist.
Dan Hulme
Entschuldigung, aber ich muss den letzten Abschnitt entfernen, da er als "Nur-Link" betrachtet wird, ohne die Schritte direkt zu erwähnen. Fühlen Sie sich frei, den Link wieder hinzuzufügen, aber auch, indem Sie den relevanten Inhalt zitieren, um die Antwort eigenständig zu machen (wenn der Link verrottet, bleibt der Inhalt weiterhin erhalten). Wenn Sie mit der Site verbunden sind, müssen Sie dies in jedem Post / Kommentar erwähnen (weiterlesen: Wie man kein Spammer ist ). Andernfalls können Sie dies ignorieren.
Andrew T.