Ich möchte meine Absicht gestartet werden, wenn der Benutzer zu einer bestimmten URL geht: zum Beispiel, der Android Market tut dies mit http://market.android.com/ URLs. So auch Youtube. Ich möchte das auch tun.Android Reagieren auf URL in Intent
Antwort
Ich habe es geschafft! Verwenden <intent-filter>
. Setzen Sie Folgendes in Ihre Manifest-Datei:
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:host="www.youtube.com" android:scheme="http" />
</intent-filter>
Dies funktioniert perfekt!
Es funktioniert nicht für mich. Kannst du bitte ein Beispiel angeben - Link, der die Anwendung öffnen würde. –
Ich würde gerne auf "www.youtube.com" reagieren, aber NICHT auf "www.youtube.com/fr /" ... Irgendeine Idee, wie ich das machen kann? – Gilbou
Das funktioniert perfekt, danke, aber ich brauche auch die URL, die geklickt wurde, um die App zu öffnen. kann jemand erklären, wie man das macht? – boogieman
Möglicherweise müssen Sie Ihrem Intent-Filter verschiedene Permutationen hinzufügen, damit er in verschiedenen Fällen funktioniert (http/https/ect).
Zum Beispiel hatte ich die folgenden für eine App zu tun, die sich öffnen würde, wenn der Benutzer auf einen Link zum Google Antriebsformen geöffnet, www.docs.google.com/forms
Beachten Sie, dass Pfadpräfix optional.
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="http"
android:host="docs.google.com"
android:pathPrefix="/forms"/>
<data
android:scheme="http"
android:host="www.docs.google.com"
android:pathPrefix="/forms" />
<data
android:scheme="https"
android:host="www.docs.google.com"
android:pathPrefix="/forms" />
<data
android:scheme="https"
android:host="docs.google.com"
android:pathPrefix="/forms" />
</intent-filter>
Es gibt eine große Antwort auf diese Frage bei http://stackoverflow.com/questions/2448213/how-to-implement-my-very-own-uri-schema-on-android/2448531#2448531 – neu242
Es gibt eine bessere Antwort auf diese Frage http://stackoverflow.com/questions/1609573/intercepting-links-from-the-browser-to-open-my-android-app – rds