2010-04-19 7 views
9

Estoy creando una aplicación de Android que requiere OAuth. Tengo toda la funcionalidad de OAuth funcionando excepto para manejar la devolución de llamada de Yahoo. Tengo el siguiente en mi AndroidManifest.xml:Android: Manejar la devolución de llamada de OAuth usando intent-filter

 
    <intent-filter> 
    <action android:name="android.intent.action.VIEW"></action> 
    <category android:name="android.intent.category.DEFAULT"></category> 
    <category android:name="android.intent.category.BROWSABLE"></category> 
    <data android:host="www.test.com" android:scheme="http"></data> 
    </intent-filter> 

Dónde www.test.com serán sustituidos con un dominio que tengo. Parece:

  • Este filtro se activa cuando hago clic en un enlace de una página.
  • No se desencadena en la redirección de Yahoo, el navegador abre el sitio web en www.test.com
  • No se activa cuando ingreso el nombre de dominio directamente en el navegador.

Así que alguien me puede ayudar con

  • ¿Cuándo exactamente se activará este filtro intención?
  • ¿Algún cambio en el filtro de intenciones o permisos que ampliará el filtro para aplicarlo a las solicitudes de redireccionamiento?
  • ¿Alguna otra aproximación que podría usar?

Gracias por su ayuda.

+0

¿Puedes por favor elaborar algún código sobre cómo usar oauth en android con yahoo? –

Respuesta

10

Así que cambié mi enfoque para utilizar un esquema personalizado, en lugar de una URL web y ahora todo funciona como se esperaba.

Así que mi URL de devolución de llamada es:
X: // devolución de llamada

y mi intención de filtro es:

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

donde X es el nombre de mi esquema de cliente.

Cuestiones relacionadas