2012-04-18 27 views
7

Quiero que mi sitio web redirija a una aplicación específica en Google Play Market si se abre en un dispositivo Android. He seguido las instrucciones de http://developer.android.com/guide/publishing/publishing.html:Abrir la página de detalles de google play para una aplicación mediante redirección de JavaScript desde el navegador de Android

"Display the details screen for a specific application: http://play.google.com/store/apps/details?id=<package_name>". 

funciona muy bien con un enlace que el usuario está haciendo clic activamente en:

<a href="http://play.google.com/store/apps/details?id=<package_name>">Download app</a> 

Pero si estoy detectando el dispositivo con javascript y tratando de redirigir el navegador cambia automáticamente http: // ... a https: // ... y el usuario se redirige al sitio web de Google Play en lugar de a la aplicación Google Play en el teléfono.

if(navigator.userAgent.toLowerCase().indexOf("android") > -1) { 
    if(confirm("Download app?")) { 
     window.location.href= "http://play.google.com/store/apps/details?id=<package_name>"; 
    } 
} 

¿Hay alguna manera de cambiar este comportamiento, mi dispositivo de prueba es un Samsung Galaxy con Android 2.3.3?

+1

Cómo acerca de cómo modificar el href del enlace (' Rajesh

+0

Intenté activar un clic-evento en el enlace con jquery pero no funcionó. ¿Cómo se refiere a "modificar el href del enlace"? El enlace en sí funciona, es el redireccionamiento de JavaScript el que hace que el navegador Android reemplace http: // con https: // –

+0

Solo preguntando, ¿está usando el navegador predeterminado o Google Chrome Beta? Agregué tu fragmento de JavaScript a una página de prueba, con el navegador predeterminado en mi Galaxy Nexus 4.0.2 funciona como es de esperar. Sin embargo, al usar google chrome no se me da la opción de "Utilizar acción completa", simplemente me lleva al sitio web, sigue buscándolo – TerryProbert

Respuesta

14

Esto parece funcionar. La redirección se abre la aplicación Google Play mientras utiliza el navegador por defecto, pero se traduce el enlace a https: // ... play.google cuando se utiliza cromo

if(navigator.userAgent.toLowerCase().indexOf("android") > -1) { 
    if(confirm("Download app?")) { 
     window.location.href= "market://details?id=<packagename>"; 
    } 
} 
+0

funciona !! Gracias. –

1

Si la respuesta aceptada no funciona o no se abre en Chrome con este error

ERROR: ERR_UNKNOWN_URL_SCHEME

Cambiar el window.location.href a window.location como esto

if(navigator.userAgent.toLowerCase().indexOf("android") > -1) { 
if(confirm("Download app?")) { 
    window.location= "market://details?id=<packagename>"; 
} 
} 
2

Si desea redirigir a Google Play aplicación intente hacerlo desde el servidor.

Los intentos del lado del cliente no funcionarán.

ejemplo PHP

header("Location: market://details?id=com.your.app"); 
Cuestiones relacionadas