Donc, en ce moment, dans mon application, l'URL à laquelle j'accède a une redirection, et lorsque cela se produit, WebView ouvrira un nouveau navigateur, au lieu de rester dans mon application. Existe-t-il un moyen de modifier les paramètres pour que la vue soit redirigée vers l'URL comme d'habitude, mais reste dans mon application au lieu d'ouvrir un nouveau navigateur?
Éditer:
Je veux l'URL de redirection, je ne sais tout simplement pas comment la créer, donc le seul moyen d'accéder à cette URL est de passer par une URL qui provoquera une redirection vers celle que je veux.
Par exemple: Lorsque vous allez ici: http://www.amazon.com/gp/aw/s/ref=is_box_/k=9780735622777 remarquez comment il redirigera l'URL vers le produit réel. Dans mon application, si je l'ouvre dans un nouveau navigateur, cela fera très bien l'affaire, mais si je la garde dans mon application avec une WebView, elle apparaîtra comme si elle effectuait une recherche pour k = 9780735622777, comme ceci: http://www.amazon.com/gp/aw/s/ref=is_s_?k=k%3D9780735622777&x=0&y=0 . OU, il ouvrira la vue dans le navigateur et montrera ce qui est approprié. Cependant, je souhaite tout conserver dans mon application.
la source
shouldOverrideUrlLoading
méthode est la prochaine URL de redirection? Et je veux l'autoriser?Selon la documentation officielle , un clic sur n'importe quel lien dans WebView lance une application qui gère les URL, qui par défaut est un navigateur. Vous devez remplacer le comportement par défaut comme celui-ci
la source
Il suffit d'ajouter une personnalisation par défaut
WebViewClient
. Cela permet au WebView de gérer lui-même toutes les URL chargées.la source
Vous devrez définir votre méthode de remplacement WebviewClient personnalisée shouldOverrideUrlLoading pour votre vue Web avant de charger l'URL.
la source
Veuillez utiliser le code kotlin ci-dessous
Pour plus d'informations cliquez ici
la source
Créez une classe qui implémente webviewclient et ajoutez le code suivant qui permet de survoler la chaîne d'URL comme indiqué ci-dessous. Vous pouvez voir ces [exemple] [1]
Sur votre constructeur, créez un objet de vue Web comme indiqué ci-dessous.
Ajoutez ensuite le code suivant pour effectuer le chargement des URL dans votre application
la source
la source