2011-01-12 13 views
10

Duplicar posibles:
Is it possible to register a http+domain-based URL Scheme for iPhone apps, like YouTube and Maps?Crear un vínculo que, o bien lanza iOS, o redirige a la tienda de aplicaciones

Tengo un esquema de URL personalizado para mi aplicación de iOS, y quiero podrá enviar un enlace por correo electrónico a alguien que podrá iniciar la aplicación si está en el dispositivo o llevarla a la tienda de aplicaciones si no la tiene.

Me gustaría poder enviar myapp: // someurl y tener que iniciar o ir a myapp en la tienda de aplicaciones, pero no creo que esto funcione de la caja.

En su lugar, estoy pensando en crear un enlace que cargue un javascript que probará myapp: // someurl, y si eso falla cargará el enlace de la tienda de aplicaciones.

Mi conocimiento de javascript es malo. Puedo establecer window.location para realizar el redireccionamiento, pero no parece haber una forma de detectar los errores de eso para realizar otra acción si eso falla.

¿Alguien sabe cómo hacer esto?

+0

Hay una muy buena respuesta aquí: http: // stackoverflow.com/questions/1108693/is-it-possible-to-register-a-httpdomain-based-url-scheme-for-iphone-apps-like/1109200#1109200 – djsmith

Respuesta

6

cheque Is it possible to register a http+domain-based URL Scheme for iPhone apps, like YouTube and Maps?

Sin embargo, usted necesita para alojar la página que contiene la secuencia de comandos a sí mismo, ya que el interior de Javascript de correo electrónico no funciona

+0

Gracias. Eso es más o menos lo que estaba buscando. – Silromen

+0

Si no desea alojar y administrar el JS usted mismo, puede simplemente usar los enlaces de Branch (https://branch.io). Ayudé a construir el servicio y abstrae toda esta complejidad. –

2

No hay una buena manera de lograr esto. Puede iniciar una aplicación a través de una URL, pero no hay forma de comprobar si una aplicación está instalada primero.

8
window.launchsockPicker = function() { 
     setTimeout(function() { 
     window.location = 'http://myDomain.com/install-app.cfm' 
     }, 500); 

     window.location = 'myApp://?context=someVariableIfNeeded'; 
    }; 
+0

¿Podría explicar por qué esto responde la pregunta? – Ben

+0

Este pequeño código realmente verificará si la aplicación está instalada y la iniciará si es así, de lo contrario se redirigirá a la tienda de aplicaciones. –

+0

Su install-app.cfm o HTML lanzará la página, verá si existe la aplicación y la iniciará o redireccionará a la tienda de aplicaciones. –

Cuestiones relacionadas