Est-il possible d'enregistrer un http+de domaine Schéma d'URL pour les applications de l'iPhone, comme YouTube et Maps?
J'aimerais avoir iOS pour ouvrir les Url de mon domaine (par exemple,http://martijnthe.nl) avec mon application à chaque fois que l'application est installée sur le téléphone, et avec le navigateur Safari Mobile dans le cas où il ne l'est pas.
J'ai lu, il est possible de créer un protocole unique suffixe pour cela, et de l'inscrire dans l'Info.plist, mais le navigateur Safari Mobile donnera une erreur dans le cas où l'application n'est pas installée.
Ce qui serait une solution de contournement?
Une idée:
1) http://Url de l'ouvrir dans n'importe quel bureau de navigateur et de rendre le service par le biais du navigateur
2) Vérifier le User-Agent et dans le cas où il est Mobile de Safari, ouvrez un myprotocol://URL pour (tenter de) pour ouvrir l'application pour iPhone et ouvrir Mobile iTunes pour le téléchargement de l'application en cas d'échec de cette tentative
Ne sais pas si cela va fonctionner... des suggestions? Merci!
- Dans le métro de new york, il ya le wifi par Boingo qui vous propose l'accès wi-fi si vous téléchargez une application qu'ils recommandent. Dès que vous le téléchargez, vous revenez à Safari, le navigateur détecte si il a été installé, puis vous accorder l'accès. Une idée de comment c'est fait?
- Le lien universel serait désormais en charge de ce cas d'utilisation sans aucun message d'erreur. Voici comment configurer votre nom de domaine et application: blog.de la branche.io/...
Vous devez vous connecter pour publier un commentaire.
Je pense que la moins intrusive, la façon de le faire est comme suit:
appInstalled
cookiewindow.location
àyour-uri://
(ou faire la redirection côté serveur)your-uri://
L'autre option que j'ai joué avec, mais a trouvé un peu maladroit, c'était de faire la suite en Javascript:
window.location="custom-uri://
réussit, le retour de délai d'attente n'est pas tué. Lorsque l'utilisateur retourne sur le navigateur de votre application, le compte à rebours est toujours là et va lancer l'app store lien. Cela est une mauvaise expérience utilisateur.Il est tout à fait possible de le faire en JavaScript aussi longtemps que votre solution de repli est un autre applink. Bâtiment sur Nathan suggestion:
Découvrez une démo en live ici.
Pour iOS 6 appareils, il y a une option: La promotion d'Applications avec Smart App Banners
J'ai trouvé que la réponse sélectionnée travaille pour le navigateur des applications, mais j'ai eu des problèmes avec le code de travail non navigateur des applications qui mettent en œuvre un
UIWebView
.Le problème pour moi était d'un utilisateur sur l'application Twitter, cliquez sur un lien qui les mènerait à mon site par le biais d'un
UIWebView
dans l'application Twitter. Puis, quand ils ont cliqué sur un bouton de mon site Twitter essaie d'être de fantaisie et de ne compléter l'window.location
si le site est accessible. Donc ce qui arrive est unUIAlertView
apparaît disant êtes-vous sûr de vouloir continuer et puis redirige immédiatement à l'App Store, sans une seconde de popup.Ma solution consiste à les iframes. Cela évite le
UIAlertView
présentés permettant pour une simple et élégant de l'expérience utilisateur.jQuery
Javascript
EDIT:
Ajouter la position absolue de l'iframe, donc lorsqu'il est inséré, il n'est pas un hasard peu d'espace au bas de la page.
Aussi il est important de noter que je n'ai pas trouvé la nécessité de cette approche avec Android. À l'aide de
window.location.href
devrait fonctionner correctement.my-app://
serait de travailler avechttps://itunes.apple.com/app/my-app-id
parce que cela redirige versappstore://
. Je vais voir si je peux déboguer le code un peu pour vous donner une solution pour d'autres url.Dans iOS9 Apple a enfin introduit la possibilité d'enregistrer votre application pour gérer certaines
http://
Url: Le Lien Universel.Une mauvaise explication de la façon dont il fonctionne:
http://
Url pour certains domaines web (url) dans votre application.http://
Url pour une installation comme expliqué ci-dessus et s'ouvre l'application appropriée automatiquement s'il est installé, sans passer par Safari première...C'est la façon la plus propre à faire du deep linking, sur iOS, malheureusement il ne fonctionne que dans iOS9 et les nouveaux...
BÂTIMENT à Nouveau sur Nathan et JB Réponse:
Comment Lancer l'Application à Partir de l'url w/o Supplémentaires Cliquez sur
Si vous préférez une solution qui ne comprend pas l'étape intermédiaire d'un clic sur un lien, le suivant peut être utilisé. Avec ce javascript, j'ai été en mesure de retourner un objet Httpresponse de Django/Python qui lance avec succès une application que si elle est installée, ou sinon lance l'app store dans le cas d'un temps. Remarque j'ai aussi besoin de régler le délai d'attente à partir de 500 pour 100 dans l'ordre pour que cela fonctionne sur un iPhone 4S. De Test et de réglage pour trouver la bonne formule pour votre situation.
document.webkitHidden
est de détecter si votre application est déjà invoquée et actuelle de safari tab pour aller à l'arrière-plan, ce code est à partir de http://www.baidu.comappurl
etweburl
pourrait résoudre votre problèmeSi vous ajoutez un
iframe
sur votre page web avec lesrc
ensemble de modèle personnalisé pour votre Application, iOS redirigera automatiquement à l'emplacement de l'Application. Si l'application n'est pas installée, il ne se passera rien. Cela vous permet d'un lien profond dans l'Application si elle est installée, ou de les rediriger vers l'App Store si il n'est pas installé.Par exemple, si vous avez l'application twitter est installé, et accéder à une page web contenant la balise suivante, vous serez immédiatement redirigé vers l'app.
Ici est un plus approfondie exemple qui redirige vers l'App store si l'Application n'est pas installée:
Heres une solution.
Installation d'un booléen sitiation l'utilisation du flou et de se concentrer
Lier votre lien avec jquery cliquez sur gestionnaire qui appelle quelque chose comme ça.
si l'application s'ouvre, nous allons perdre le focus sur la fenêtre et la fin du minuteur. sinon on n'obtient rien et que l'on charge les habituels facebook url.
window.location
...Vous ne pouvez pas, autant que je sache, faire la totalité du système d'exploitation à comprendre un
http:
+URL de domaine. Vous ne pouvez enregistrer de nouveaux systèmes (j'utilisex-darkslide:
dans mon application). Si l'application est installée, le navigateur Safari Mobile lance l'application correctement.Cependant, vous avez à gérer le cas où l'application n'est pas installée avec un "Encore ici? Cliquez sur ce lien pour télécharger l'application à partir d'iTunes." dans votre page web.
http
UrlCela semble une approche raisonnable pour moi, mais je ne pense pas que vous serez en mesure de l'obtenir pour ouvrir mobile itunes en tant que second centre. Je pense que vous aurez à choisir l'un ou l'autre: soit rediriger vers votre application ou de votre itunes.
c'est à dire si vous rediriger vers myprotocol://, et l'application n'est pas sur le téléphone, vous n'aurez pas une seconde chance pour rediriger vers itunes.
Vous pourriez peut-être d'abord rediriger vers une (iphone optimisé) de la page de destination et donner à l'utilisateur la possibilité de cliquer à travers à votre application, ou à itunes pour télécharger l'application si ils ne l'ont pas? Mais, vous serez en s'appuyant sur l'utilisateur de faire la bonne chose. (Edit: si vous pouviez définir un témoin, ce qui est une première chose seulement?)
En cherchant à résoudre le problème de pop-up, j'ai découvert qu'Apple avait un moyen de contourner ce problème.
En effet, lorsque vous cliquez sur ce lien, si vous avez installé l'application, il est redirigé vers; dans le cas contraire, vous serez redirigé vers la page web, sans aucun pop-up.