Le lancement de téléphone/e-mail/map liens dans WKWebView
KINWebBrowser est un navigateur web open source module pour les applications iOS. J'ai récemment mis à jour KINWebBrowser à utiliser WKWebView à l'élimination progressive des UIWebView. Ceci conduit à des améliorations significatives, mais:
Problème: WKWebView ne permettent pas aux utilisateurs de lancer des liens contenant des Url pour les numéros de téléphone, email, adresse, cartes, etc.
Comment puis-je configurer un WKWebView pour le lancement de l'iOS standard comportements pour ces Url de substitution lorsqu'il est lancé comme des liens à partir de la page affichée à l'écran?
Tous les le code est disponible ici
Plus d'infos sur WKWebKit
Voir le question sur le KINWebBrowser GitHub ici
OriginalL'auteur dfmuir | 2014-10-22
Vous devez vous connecter pour publier un commentaire.
J'ai été en mesure de le faire fonctionner pour le lien Google Maps (qui semble être liée à l'target="_blank") et pour l'tél: système par l'ajout de cette fonction à votre KINWebBrowserViewController.m
decisionHandler
est appelé.Ce code est définitivement sur la bonne voie, mais il introduit une faille de sécurité qui pourrait permettre d'appels et des appels FaceTime à être involontairement lancé. Découvrez mon explication ici: github.com/dfmuir/KINWebBrowser/issues/10
Cette solution nous a énormément aidés à mon entreprise. Merci Darren. Nous avons été en mesure de le modifier légèrement d'ouvrir l'app store à partir d'un lien à partir de notre page web et ouvrez l'application e-mail de tapoter sur un lien dans notre page web. Cheers!
excellente solution!
Pour éviter la vulnérabilité de la sécurité problème que @dfmuir souligné, modifier l'url "telprompt" au lieu de la valeur par défaut "tel". Par exemple, si l'URL personnalisée est "tél:(212)%20555-6666", puis le telprompt équivalent est "telprompt:(212)%20555-6666". De cette façon, l'utilisateur recevra un message avant de faire l'appel
OriginalL'auteur Darren Ehlers
Fonctionne sur xcode 8.1, Swift 2.3.
Pour target="_blank", numéro de téléphone (tél.:) et mail (mailto:) liens.
OriginalL'auteur Victor Almeida
Vous avez besoin à la mise en œuvre d'un autre rappel pour obtenir ce droit (Swift 3.1):
Maintenant, Facebook, Mail, Appstore,.. obtenir appelée directement à partir de votre application sans avoir besoin de les ouvrir Safari
OriginalL'auteur 2h4u
Cela m'aide pour Xcode 8 WKWebview
ÉDITÉ:
En lien doit être attribut
target="_blank"
.OriginalL'auteur Abduhafiz
Je suis atterri ici chercher comment ouvrir les pièces jointes gmail sur wkwebview.
Ma solution est simple:
OriginalL'auteur Luca Davanzo
La réponse ci-dessus workes pour moi, mais j'ai besoin de réécrire pour swift 2.3
OriginalL'auteur Philipp Homann
MISE À JOUR POUR SWIFT 4.2
Désolé de déterrer un vieux post, mais j'ai eu les mêmes problèmes et ont mis à jour la solution pour Swift 4.2. J'ai mis ma solution ici, de sorte qu'il peut aider les autres et si non, j'espère pouvoir trouver la prochaine fois que je travaille avec WKWebView!
J'ai utilisé le site suivant comme source d'inspiration:
SubzDesignz iOS Swift 4 WKWebview – Détecter tél, mailto, target=”_blank” et check connection
OriginalL'auteur Iain Coleman