PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV Mobile 2024 → [WM26 Android] Migration projet WM25 vers WM26 et probleme Requette HTTP 404
[WM26 Android] Migration projet WM25 vers WM26 et probleme Requette HTTP 404
Iniciado por Cezame, jan., 20 2021 8:57 AM - 25 respostas
Publicado em janeiro, 20 2021 - 8:57 AM
Bonjour,

Ayant 2 update d'applications refusées sur le Play Store pour cause de Backgroud Access Location, et le pacth proposé par le service technique ne fonctionnant pas, j'ai essayé de migrer les applications sous WM26.

Je ne fais jamais cela et attend toujours au moins l'update 1 pour migrer tellement j'ai par le passé perdu de temps à chaque mise à jour.

J'ai donc simplement migré le projet qui fonctionne parfaitement sous WM26,

Au lancement l'utilisateur doit se connecter à un serveur pour y récupérer des données, problème toutes les requetes retournent HTTP 404 !

Bien entendu sur le même terminal avec la version WM25 de l'application aucun problème! Aucun souci de connexion sur le terminal ni de droits pour l'application.

Auriez vous une piste pour solutionner cette erreur?

Par avance merci de votre aide.
Membro registado
794 mensagems
Popularité : +40 (42 votes)
Publicado em janeiro, 20 2021 - 12:23 PM
Dans une de mes applications, vous pouvez consulter les informations des pages officielles via HTTP. Je n'ai pas eu de problème pour passer à WM26 quand je le teste dans de vrais appareils mais il renvoie des informations corrompues avec les PDF quand je le teste à partir d'un émulateur (pas ARM mais processeur x86). Mes tests sont effectués sur les appareils Android 10. Quelle version de votre appareil possède-t-il ?


Rubén
Publicado em janeiro, 20 2021 - 2:21 PM
J'ai testé sur 2 appareils .... Android 8 et Android 9 idem!

Je pense qu'à la migration simple d'un projet sur une nouvelle version cela devrait fonctionner au minimum comme sur la version précédente!

Avez vous ce genre de problème vous aussi?
Membro registado
794 mensagems
Popularité : +40 (42 votes)
Publicado em janeiro, 20 2021 - 5:26 PM
J'ai dû vérifier et corriger un certain nombre de fenêtres de l'application dans le passage de WM25 à WM26. Malheureusement, dans les dernières versions, le passage d'une version à l'autre n'est pas aussi direct et il faut tout vérifier...

Pouvez-vous donner quelques exemples de vos appels HTTP ? Utilisez-vous les fonctions ou les types de variables httpRequest et httpResponse ?

Rubén
Publicado em janeiro, 20 2021 - 5:51 PM
C'est d'une simplicité sans nom...

Procedure Connecte_Serveur(sEmail est une chaîne,sPassword est une chaîne)

cMaRequête est un httpRequête
cMaRéponse est un httpRéponse

cMaRequête..URL = gsDerverAddress+"/api/session?auth:"
HTTPCréeFormulaire("Param")
HTTPAjouteParamètre("Param","email",sEmail)
HTTPAjouteParamètre("Param","password",sPassword)
cMaRequête..ContentType = "application/x-www-form-urlencoded;charset=UTF-8"
cMaRéponse = HTTPEnvoieFormulaire("Param", cMaRequête)
SI ErreurDétectée ALORS
RENVOYER(Faux)
SINON
SI cMaRéponse..CodeEtat = "200" ALORS
//Traitement réponse

RENVOYER(Vrai)
SINON
Erreur(cMaRéponse..Contenu)
RENVOYER(Faux)
FIN

FIN

Retourne systématiquement erreur 404 !

J'ai abandonné le fait de travailler sur les nouvelles version de WM et Windev tant que le l'update 1 n'est pas sorti, trop tde perte de temps! On contourne , on bricole pour faire marcher ce qui devrait marcher normalement et qui après les corrections de bugs fonctionne!
Membro registado
794 mensagems
Popularité : +40 (42 votes)
Publicado em janeiro, 20 2021 - 11:05 PM
Dans la variable httpRequest https://doc.windev.com/en-US/… vous avez la propriété ProcedureTrace qui peut vous donner une idée du format de l'appel que vous effectuez. Et puis dans httpResponse, vous avez les valeurs des propriétés DescriptionCodeEtat et EntêteBrut qui peuvent vous donner des informations sur la réponse.

D'autre part, à quel domaine faites-vous l'appel ? L'erreur 404 est produite lorsque la destination à laquelle vous voulez accéder n'existe pas.

Dans mon cas, j'accède au contenu des pages officielles à la fois en http et en https et je n'ai aucun problème. Parfois, si les certificats de la page web ne sont pas corrects ou si elle est expirée, je dois désactiver certaines des erreurs pour obtenir le contenu.

Rubén
Publicado em janeiro, 21 2021 - 10:44 AM
Aucun soucis pour l'accès au serveur, le même code en WM25 sur la même application fonctionne parfaitement. (sur les mêmes périphériques).

J'ai simplement migré en WM26 sans toucher une seule ligne de code!

Le problème est une régression comme bien d'autres à chaque nouvelle version !
Membro registado
3.328 mensagems
Popularité : +93 (137 votes)
Publicado em janeiro, 21 2021 - 12:15 PM
Cezame dans ce cas là seule solution est de rester sur wm25
Et de contacter le support pcsoft
Puis attendre un patch ou une mise à jour
Publicado em janeiro, 21 2021 - 1:12 PM
Oui mais problème j'ai un soucis avec la version 25 et deux applications bloquées sur le play store à cause du BACKGROUND_ACCESS_LOCATION et le pacth fourni par le support technique ne fonctionne pas!
Je ne comprends pas qu'on puisse chaque année lancer une nouvelle version truffée de bugs!
Membro registado
3.328 mensagems
Popularité : +93 (137 votes)
Publicado em janeiro, 21 2021 - 3:16 PM
Oui,
Donc a ta place je retourne en WM25 083h
Puis
Girardeau a fourni une méthode qui fonctionne sur cette page
https://forum.pcsoft.fr/fr-FR/pcsoft.fr.windevmobile/40936-access-background/read.awp

Si tu n'as pas garder la version 25 de ton projet il existe un outil de rétrogradation sur le dépôt pcsoft
Mais pas sur qu'il fonctionne.

Je sais c'est compliqué mais ça fonctionne
C'est juste en attendant une meilleure solution
Et le plus important est de ne pas rester bloqué.
Publicado em janeiro, 21 2021 - 3:21 PM
J'ai bien entendu conservé la version 25, mais la solution du patch ne fonctionne pas car le fichier AndroidManifest.xml n'est jamais généré dans le répertoire Android/gen et le support technique ne m'est pas d'un grand secours!
Ils me font tourner en rond et rien de plus...
Résultat tout est bloqué pour un problème qui est actif depuis les changements du 02 Novembre...
Membro registado
3.328 mensagems
Popularité : +93 (137 votes)
Publicado em janeiro, 22 2021 - 5:02 AM
Normal, tu dois être dans une version au dessus de 083h
J'ai bien précisé 25 083h ( il n'y a pas de patch pour cette version)
Je te garantie que l'apk où l'aab se créer dans cette version

Au pire tu souhaites garder ta version actuelle
Si une autre machine tu met la version que je demande
De préférence a la racine du disque que tu nome WM25083h
Puis tu recopie le dossier dans ta machine actuelle
Si tu lance le bon exécutable, ça va fonctionner.
Publicado em janeiro, 22 2021 - 8:43 AM
Bonjour,

Cela veut dire que l'autorisation Access_Background_Location ne sera pas ajoutée en version 083h ?
Membro registado
3.328 mensagems
Popularité : +93 (137 votes)
Publicado em janeiro, 22 2021 - 11:01 AM
J'ai bien l'impression que tu fais exprès de pas comprendre.
J'ai dit wm25083h + solution de Girardeau
Faut suivre
Membro registado
177 mensagems
Popularité : +16 (16 votes)
Publicado em janeiro, 22 2021 - 2:12 PM
La requête arrive-t-elle jusqu'au serveur web?
Il serait intéressant de regarder du côté des logs du serveur pour savoir si le pb se situe dans le domaine ou dans ce qui suit.
Il est possible que le problème puisse être solutionné facilement avec ces infos.
Publicado em janeiro, 22 2021 - 4:18 PM
Nous ne savons pas si la requête part ou pas , une chose est sure c'est que la requête renvoie systématiquement HTTP 404!

Vu les autres bugs rencontrés notamment sur les retour de ZR et fin de saisir automatique, nous n'irons pas plus loin dasn la perte de temps et feront comme chaque année nous attendrons au minimum l'update 1 voire 2 pour travailler en version 26.
Nous gagnons ainsi de précieuses journées de développement perdues à essayer de faire fonctionner ce qui marchait parfaitement avant la mise à jour!
Publicado em janeiro, 22 2021 - 4:23 PM
J'ai utilisé le pacth du support technique qui n'accepte pas les chemins avec d'accès trop longs...

J'ai recompilé on va voir sur le play store si c'est accepté car bien entendu on ne peut pas vérifier si l'autorisation Background_Access_Location a bien été enlevée.
Membro registado
36 mensagems
Publicado em janeiro, 22 2021 - 5:04 PM
Cezame a écrit :
Oui mais problème j'ai un soucis avec la version 25 et deux applications bloquées sur le play store à cause du BACKGROUND_ACCESS_LOCATION et le pacth fourni par le support technique ne fonctionne pas!
Je ne comprends pas qu'on puisse chaque année lancer une nouvelle version truffée de bugs!


Bonjour,

j'ai également ce problème de BACKGROUND_ACCESS_LOCATION sur une mise à jour Playstore et il faut faire une vidéo à Google pour expliquer pourquoi on a besoin de ce droit (alors que je n'en ai pas besoin car jamais de background).
J'ai fait la vidéo et j'attend... La version est à nouveau en cours d'examen par Google...

Donc si je comprends bien c'est un bug de la 25 ?
J'ai la version 250089f
Y a t-il un patch pour celle là ?

merci

--
David
Ingénieur logiciel
Utilisateur de windev depuis 1996
Membro registado
177 mensagems
Popularité : +16 (16 votes)
Publicado em janeiro, 22 2021 - 5:16 PM
C'est dommage que tu n'aies pas accès au serveur. Si tu as un "404", normalement c'est le serveur qui te l'envoie.

Je comprends ton agacement, nous avons tous les mêmes problématiques à la sortie de chaque nouvelle version majeure.

Pour ma part, je commence tout juste à utiliser la 25 en prod et je tente de compiler en 26 lors de chaque sortie d'update pour envoyer des demandes au ST si je rencontre des bugs.
C'est facile à faire pour WD, mais pour WM c'est plus compliqué avec les règles qui changent chaque année chez Apple et Google et l'abandon pur et simple de WM25 dès la sortie de la 26.
Publicado em janeiro, 22 2021 - 6:04 PM
Bonsoir,

Il y a un patch pour le Backgroud_access_location il faut faire attention au chemin du projet sinon ça fonctionne pas.

Une requête au support technique ils vous enverront le patch.

Par contre je pense qu'un correctif de WM25 devrait être apporté, les modifications des conditions de Google datent du 2 Novembre!
Membro registado
36 mensagems
Publicado em janeiro, 26 2021 - 8:42 AM
Bonjour,

je l'ai eu avec le support tech.
Je vais essayer ça aujourd'hui...

Merci

--
David
Ingénieur logiciel
Utilisateur de windev depuis 1996
Publicado em fevereiro, 11 2021 - 10:06 AM
Bonjour,

Je viens de réessayer d'utiliser WM26, j'ai migré simplement mon application (après sauvegarde de la version WM25).

Mais toujours impossible de me connecter à mon serveur avec un httpEnvoiFormulaire.

Ci dessous le code utilisé.

Procedure Connecte_Serveur(sEmail est une chaîne,sPassword est une chaîne)


cMaRequête est un httpRequête
cMaRéponse est un httpRéponse

vTableauRéponse est un Variant
vDétails est un Variant

//ToastAffiche("Connexion au serveur...",toastCourt,cvHaut)
cMaRequête..URL = gsServerAddress+"/api/session?auth:"
HTTPCréeFormulaire("Param")
HTTPAjouteParamètre("Param","email",sEmail)
HTTPAjouteParamètre("Param","password",sPassword)
cMaRequête..ContentType = "application/x-www-form-urlencoded;charset=UTF-8"
cMaRéponse = HTTPEnvoieFormulaire("Param", cMaRequête)
SI ErreurDétectée ALORS
RENVOYER(Faux)
SINON
SI cMaRéponse..CodeEtat = "200" ALORS
vTableauRéponse = JSONVersVariant(cMaRéponse..Contenu)
vDétails = vTableauRéponse.attributes
//Traitement des informations

RENVOYER(Vrai)
SINON
Erreur(cMaRéponse..Contenu)
RENVOYER(Faux)
FIN

FIN


Ce code fonctionne parfaitement sous WM25, sous WM26 je reçois invariablement un HTTP:404 , problème d'encodage du contenu ?
Par avance merci pur votre aide.
Membro registado
3.328 mensagems
Popularité : +93 (137 votes)
Publicado em fevereiro, 11 2021 - 1:25 PM
Vu que le patch est seulement pour Access background
Il faut maintenant demander le patch de HTTPEnvoieFormulaire
Bon courage
Publicado em fevereiro, 11 2021 - 7:56 PM
Je ne travaille jamais sur une version avant l'udate1 , il y a toujours des régression et bugs, sans compte les nouveautés qui ne sont pas disponibles.
A chaque fois que je l'ai fait j'ai perdu de nombreuses journées de développement à tenter de débugger ce qui marchait parfaitement dans la version précédente.
Personne n'a de souci avec HTTPEnvoiFormulaire ?
Membro registado
3.328 mensagems
Popularité : +93 (137 votes)