PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile 2024 → Difference entre simulateur et emulateur android
Difference entre simulateur et emulateur android
Débuté par Topo, 05 avr. 2024 15:36 - 10 réponses
Membre enregistré
58 messages
Posté le 05 avril 2024 - 15:36
Bonjour n'ayant pas de terminal android à disposition pour effectuer des tests je passe par les émulateurs d'android studio mais j'ai constaté beaucoup de différences entre le simulateur de Windev et les emulateurs (dans mon cas un google pixel). J'ai des fonctionnalités qui ne fonctionnent pas parexemple ce code qui supprime un rapport qui fonctionne parfaitement dans le simulateur mais qui ne "fait rien" dans l'émulateur
SELON OuiNon(0,"ATTENTION ! Voulez - vous vraiment supprimé ce rapport ?")
CAS 1 // si l'on répond oui
bPassed est un booléen = HExécuteRequête(REQ_SuppAttachEnt,LIB_IDAttJr..Valeur)
SI bPassed = Vrai ALORS
Info("Le rapport a bien été supprimée !")
Ouvre(FEN_Liste_Rapports, gsNumeroContrat,gnIDContrat)
FIN
AUTRE CAS
RETOUR

FIN


Je précise que j'ai configuré le google pixel aux versions correspondantes à celles du projet.
Je voudrais savoir si quelqu'un parmi vous a déjà rencontré ce type de problème ?

Merci d'avance
Membre enregistré
951 messages
Popularité : +53 (63 votes)
Posté le 05 avril 2024 - 16:51
Bonjour,

C'est a dire "ne fait rien"?

Tu as le popup OuiNon?
Quand tu clic sur oui, tu n'as pas le info ?
Ta requete est sur un fichier hfsql local ? Client/Serveur ?

Ndrj
Membre enregistré
328 messages
Posté le 08 avril 2024 - 08:30
Bonjour Topo,

Réponse en forme d'hypothèse, parce que je ne maîtrise pas le sujet :
Le simulateur étant celui proposé par Windev, il a toutes les infos nécessaires dans le projet.
L'émulateur étant externe, il a peut-être besoin d'un paramétrage pour savoir où sont les données par exemple ?...
Membre enregistré
58 messages
Posté le 08 avril 2024 - 09:03
Bonjour Ndrj quand je clique sur le bouton supprimé j'ai bien le popup qui apparaît mais la suppression ne s'effectue pas quand j’appuie sur oui (contrairement au simulateur windev ). Le bout de code entre "cas" et "autre cas" ne s’exécute pas le rapport existe bel et bien pourtant
Ma requête s'effectue sur un fichier hfsql local. J'arrive bien a enregistré de nouvelles données dans ce fichier (j'arrive a créer des rapports sur l’émulateur et sur le simulateur )
Membre enregistré
58 messages
Posté le 08 avril 2024 - 09:06
Bonjour Pucpood , je précise bien ou sont les données car j'arrive a créer des rapports et les sauvegardés dans le fichier hfsql en local.
Membre enregistré
398 messages
Popularité : +13 (13 votes)
Posté le 08 avril 2024 - 15:37
Bonjour,

Avez-vous testé de voir si HExecuteRequête avait renvoyé une erreur ? Si oui, quelle est cette erreur ?

SELON OuiNon(0,"ATTENTION ! Voulez - vous vraiment supprimer ce rapport ?")
CAS 1 // si l'on répond oui
bPassed est un booléen = HExécuteRequête(REQ_SuppAttachEnt,LIB_IDAttJr..Valeur)
SI bPassed = Vrai ALORS
Info("Le rapport a bien été supprimé !")
Ouvre(FEN_Liste_Rapports, gsNumeroContrat,gnIDContrat)
SINON
Erreur("Une erreur est survenue", HErreurInfo(hErrComplet))
FIN
AUTRE CAS
RETOUR
FIN
Membre enregistré
58 messages
Posté le 09 avril 2024 - 10:42
Bonjour bchanudet je n'ai aucune erreur du moins si il y en a une je n'arrive pas le voir car je passe par un emulateur android studio et ce dernier n'arrive pas à s'attacher au deboggeur de windev (j'ai cette info au lancement des tests "Waiting for debbuger , Application MyApp is waiting for the debugger to attach). Autant dire que je developpe "à l'aveugle". Cependant je n'ai aucun de ces bugs en passant par le simulateur intégré a windev tout fonctionne normalement.
Membre enregistré
398 messages
Popularité : +13 (13 votes)
Posté le 09 avril 2024 - 11:34
Bonjour,

Oui, le mode débugueur peut être un peu capricieux avec l'émulateur.

Une autre possibilité est d'utiliser la fonction Trace() un peu partout, et ensuite d'utiliser le CCAndroid (dans les outils de Windev Mobile), ou Android Studio, pour lire et exploiter ces traces.
Membre enregistré
951 messages
Popularité : +53 (63 votes)
Posté le 09 avril 2024 - 13:51
Bonjour,

Donc tes fichiers sont en local
on est d'accord que :

En mode Go, ton fichier est dans le repertoire exe de ton projet sur ton ordinateur
En mode Emulateur donc sur une VM Android ou alors un téléphone physique ton fichier est sur le téléphone ou la VM, ce n'est donc pas le meme fichier que sur ton ordinateur

Quand tu dit que la requête ne supprime pas tes données, tu le regarde où ? sur le téléphone ? sur ton pc ?

Quel est le code sql de ta requete ?, as tu vérifier que la valeur de LIB_IDAttJr..valeur est la bien la bonne ? c'est un libelle dans une fenetre ou une ZR ?

Ndrj
Membre enregistré
58 messages
Posté le 09 avril 2024 - 15:42
ah merci bchanudet je n'en avais aucune idée merci pour l'astuce
Membre enregistré
58 messages
Posté le 09 avril 2024 - 15:47
Bonjour Ndrj , plus précisément c'est une analyse hfsql d'apès ce que j'ai compris c'est compilé avec l'application. Concernant la requête c’est une simple requête de suppression qui prend en paramètre l'id de la ligne a supprimé.
Et j'ai fini par le faire fonctionner avec l’émulateur en m'assurant de passer un entier a la place d'une chaine. Si quelqu'un a une idée du pourquoi la chaine passe en simulateur et l'entier en émulateur je suis preneur !