Forzar enlaces para abrir en la aplicación, no el navegador predeterminado


16

Por ejemplo, recibo un correo electrónico de Pinterest con enlaces interesantes para la semana. Cuando hago clic en un pin, se abre en Chrome y no en la aplicación Pinterest. Esto sucede con algunas aplicaciones y me preguntaba si hay una manera de "abrir el enlace con" el tipo de característica.

¿Es posible forzar la apertura de los enlaces en sus respectivas aplicaciones y no en el navegador predeterminado (por ejemplo, Chrome)?

Respuestas:


13

Las aplicaciones pueden solicitar que los enlaces se abran usando la aplicación, usando una API llamada "filtro de intención".

Si la aplicación tiene el filtro de intención correcto, se le pedirá que abra el enlace usando esa aplicación, y la aplicación hará algo con ella.

Esto tiene que ser codificado en el desarrollador de la aplicación, y no hay manera de ponerla en práctica mismo a menos que descompilar la aplicación y agregarlo en.

Un ejemplo de una aplicación que hace esto es la aplicación Google+.


2
Más ejemplos incluyen: Twitter, Google Maps, Foursquare. Por lo tanto, depende completamente de los desarrolladores de la aplicación.
cerveza

2
Me resulta extraño que la aplicación Gmail no esté haciendo eso. Por ejemplo: en Chrome en Android, haga clic en la pestaña reciente que muestra un correo electrónico en el escritorio de Chrome; En ese caso, tendría sentido abrir ese correo electrónico en la aplicación Gmail.
avernet

¿Podría proporcionar alguna documentación o más información sobre el filtro de intención? Muchas gracias, probablemente obtendrá mucho más crédito por esta respuesta, muy útil.
1984

6

Esta aplicación auxiliar hace que los enlaces de Facebook, Twitter, Instagram, GitHub y Goodreads se abran en sus aplicaciones en lugar del navegador: Abrir enlace en la aplicación

Todavía no es compatible con Pinterest, pero si eres técnico, es fácil agregar nuevas aplicaciones y no requiere escribir código. Detalles en el repositorio de GitHub .


1
Instalé Open Link en la aplicación y está funcionando. Tengo una aplicación de base de datos y agregué un campo para URL en una de las tablas y siempre se abre en el navegador antes. Gracias por compartir.
Sr. Xymon

¿Pero esto no funciona con Firefox en Android?
endolito

1

Si los enlaces se abrían en Chrome de forma predeterminada, todo lo que tenía que hacer era ir a Configuración -> Aplicaciones -> Establecer como predeterminado, elegir la aplicación de Chrome y presionar Clear defaults .

La próxima vez que hice clic en el enlace, el teléfono me lo pidió Open withcon solo dos opciones: Chrome y Samsung Internet Browser. Cuando elijo Chrome Just once, una vez más Open withsurgió, pero esta vez con 3 opciones: Pinterest, Chrome y Samsung Internet Browser. Elegí Pinterest seguido deAlways y eso es todo.

No estoy seguro de por qué, pero esto funcionó.


No uso Pinterest, pero podría suponer que el primer enlace es una URL abreviada / compacta que no es reconocida por la aplicación Pinterest, luego el navegador redirige al enlace que ahora es reconocido por la aplicación Pinterest, de ahí el opción adicional en el 2do enlace. (más información sobre cómo funciona esto en la respuesta existente )
Andrew T.

0

En general, no puedes hacerlo. La razón detrás de los enlaces que se abren en un navegador es que usan los mismos protocolos que los enlaces web normales. Entonces, si la aplicación particular no es un navegador, los enlaces deben abrirse con una aplicación de navegador.

Pero es posible que haya visto que algunos enlaces (particularmente enlaces a aplicaciones de Android en el mercado) se pueden abrir con la aplicación Android Market / Google Play Store. Esto es posible porque esos enlaces se usan market://en sus enlaces en lugar de los típicoshttp://

Si necesita confirmarlo, intente borrar los valores predeterminados de su navegador Chrome. Te hará elegir una aplicación para abrir un enlace cuando hagas clic en ellas. Esto te dará un enlace abierto con opción (por supuesto, para usar las aplicaciones del navegador)

Para hacer esto, vaya Settings -> Appsy seleccione la aplicación Chrome. Desplácese hasta la parte inferior y busque un botón claro de valores predeterminados y haga clic en él.


44
Esto no es realmente cierto. Una aplicación puede registrar una intención de abrir cualquier URL, incluso si la usa http. Por ejemplo, la aplicación Play Store gestionará http://play.google.com/store/apps/details?id=fooenlaces, así como market://enlaces.
Dan Hulme

-3

Los desarrolladores de las aplicaciones son los que agregan un navegador a la aplicación a través de una actualización. Si el desarrollador de la aplicación Pinterest no ha agregado una funcionalidad de navegador, entonces no hay forma de abrir enlaces externos en la aplicación.

Cuando los desarrolladores agregan un navegador a la aplicación, puede elegir si desea usar la aplicación predeterminada en su dispositivo o el navegador de aplicaciones incorporado.


2
No creo que esto sea exactamente lo que el interlocutor está buscando. La pregunta no se trata de aplicaciones con un navegador incorporado, se trata de usar la aplicación para abrir contenido desde esa aplicación, en lugar de abrir un navegador e ir al sitio web de la aplicación. En el ejemplo, el enlace está en Gmail, y el interlocutor quiere abrir el contenido de Pinterest con la aplicación Pinterest, no un navegador web de ningún tipo. No es un navegador "reducido" integrado en una aplicación.
Dan Hulme

Lo sentimos, pero tengo que eliminar la última sección porque se considera "solo enlace" sin mencionar los pasos directamente. Siéntase libre de agregar el enlace nuevamente, pero también citando el contenido relevante para que la respuesta sea independiente (si el enlace se pudre, entonces el contenido aún se conserva). Además, si está afiliado al sitio, debe mencionarlo en cada publicación / comentario (lectura adicional: Cómo no ser un spammer ). De lo contrario, puede ignorar esto.
Andrew T.
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.