2016-05-31 3 views
1

Ich möchte eine App erstellen, bei der alle URLs auf einem Gerät beantwortet werden. Dokumentation erwähnt, wie ein bestimmtes Schema wie zu handhaben unten-Absichtsfilter, um auf alle URLs in Android zu antworten?

<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> 

Aber wie definiere ich ein Intent-Filter jede URL behandeln nicht nur die Zugehörigkeit zu einer bestimmten Domäne oder Host? Ist es möglich?

Antwort

1

Entfernen Sie einfach das unten stehende Zeile aus dem Code, den Sie geschrieben:

<data android:host="www.youtube.com" android:scheme="http" /> 

So werden Sie sich mit

<intent-filter> 
    <action android:name="android.intent.action.VIEW" /> 
    <category android:name="android.intent.category.DEFAULT" /> 
    <category android:name="android.intent.category.BROWSABLE" /> 
</intent-filter> 

Alternativ beenden, können Sie nur wollen, um die Linie zu

verkürzen
<data android:scheme="http" /> 

Dadurch wird Ihre App nur HTTP-URLs abfangen, also im Grunde Links.

2

Schema definieren wie

<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"/> 
      <data android:scheme="https"/> 
      <data android:scheme="about"/> 
      <data android:scheme="javascript"/> 
     </intent-filter> 
Verwandte Themen