PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile 2024 → Champ HTML et Javascript
Champ HTML et Javascript
Débuté par Gaël, 15 avr. 2018 22:05 - 6 réponses
Membre enregistré
151 messages
Popularité : +7 (7 votes)
Posté le 15 avril 2018 - 22:05
Bonjour,

j'ai intégré un champ HTML dans mon application Android, la case "désactiver javascript" est bien décochée.

Suivant les pages que j'affiche, s'il y a des redirections par Javascript alors elles ne fonctionnent pas. Quelqu'un aurait le même problème ? Savez-vous quelle API est utilisée par le champ HTML en Windev Mobile et s'il y a un moyen de le "tweaker" ?

Merci d'avance !
Posté le 17 avril 2018 - 19:42
j'ai vu dans d'autres post que tu n'est pas mauvais en java
donc je te dirais intègre un
champ natif avec firefox ou chrome
par défaut le champ html utilise le navigateur Android
une autre piste les intent
Membre enregistré
151 messages
Popularité : +7 (7 votes)
Posté le 23 avril 2018 - 08:42
Bonjour popoy,

merci de l'astuce, et du compliment! ;)

Malheureusement j'ai récemment porté mon projet aussi sur iOS, et chaque code Java a dû être également écrit dans cette horreur d'objective-C, j'aurais donc préféré rester sur des composants WinDev Mobile. Quoi qu'il en soit j'ai contacté le support technique, en leur fournissant un projet dysfonctionnel.

Merci encore de ta réponse !
Posté le 23 avril 2018 - 20:06
en relisant ton 1er post
si tu désactive le JavaScript il me paraît normale que les liens JavaScript ne fonctionnera pas
peut être l'activer par programmation de façon ponctuelle lorsque tu détecte un lien JavaScript
Membre enregistré
151 messages
Popularité : +7 (7 votes)
Posté le 30 avril 2018 - 22:23
Le JavaScript n'était pas désactivé.

Bon, après avoir tenté en vain d'obtenir une réponse du support technique, voici ma solution qui fonctionne, et qui prouve au passage qu'il y a bien un problème avec le champ HTML en Android.

Le champ HTML en Android utilise un composant WebView qui est mal configuré, j'ai donc créé une méthode Java :

import android.webkit.WebView;
import android.webkit.WebChromeClient;

public static void fixhtml(String field)
{
WebView browser = (WebView)getView(field);

browser.getSettings().setJavaScriptEnabled(true);
browser.getSettings().setDomStorageEnabled(true);
browser.setWebChromeClient(new WebChromeClient());

}


Et dans le code d'initialisation de la fenêtre qui contient le champ HTML, j'exécute cette méthode java en lui envoyant le nom complet du champ HTML :

fixhtml("FENINT_HueAuth.HTML_HueAuth")


Et ça fonctionne.
Posté le 20 mai 2019 - 08:20
Bonjour Gaël,

Merci pour ton petit code, j'ai eu le même problème et c'est réglé.
Je ne comprenais pas que ça fonctionne sous IOS et pas sous Android.
Et je suis presque sur que ça fonctionnais dans une version antérieure.

Matthieu
Posté le 13 septembre 2021 - 16:31
Franchement je comprends pas comment votre code marche ni ou les mettre