Pregunta

Quiero que mi intención de ser lanzado cuando el usuario va a una determinada URL: por ejemplo, el mercado androide hace con http://market.android.com/ URLs. lo mismo ocurre con youtube. Quiero mío para hacer eso también.

¿Fue útil?

Solución

Lo hice! Utilizando <intent-filter> . Ponga lo siguiente en el archivo de manifiesto:

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

Esto funciona perfectamente!

Otros consejos

Es posible que necesite añadir diferentes permutaciones para su filtro intención de conseguir que funcione en diferentes casos (HTTP / HTTPS / ect).

Por ejemplo, que tenía que hacer lo siguiente para una aplicación que abriría cuando el usuario abre un enlace a Google formas de accionamiento, www.docs.google.com/forms

Tenga en cuenta que el prefijo de ruta es opcional.

        <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>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top