IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windev Mobile Discussion :

Procédure en java, plantage sur l'appel de la procédure (import android.util.*;) [WM18]


Sujet :

Windev Mobile

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    325
    Détails du profil
    Informations personnelles :
    Localisation : France, Morbihan (Bretagne)

    Informations forums :
    Inscription : Mars 2008
    Messages : 325
    Points : 150
    Points
    150
    Par défaut Procédure en java, plantage sur l'appel de la procédure (import android.util.*;)
    Bonjour

    Je connais bien windev mais pas windev mobile.
    C'est ma première semaine de taff dans ma nouvelle entreprise, Il y a une application sous windev mobile qui a été réalisé avec la personne qui est partie.
    Le projet marche, j'ai des évolutions à faire. Je copie le projet du réseau sur mon poste en local. j'ouvre et je fais un test et ça plante. Je ne sais pas pourquoi cela ne fonctionne pas.

    Lorsque je fais un go j'ai ce plantage :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    Erreur à la ligne 38 du traitement Clic sur BTN_Envoi.
    L'appel de code natif n'est pas disponible.
     
    **********************************************
     
    ----- Informations techniques -----
     
    Appel WL :
    Traitement de 'Clic sur BTN_Envoi' (FEN_Requete.BTN_Envoi), ligne 38, thread 0
     
    Que s'est-il passé ?
    L'appel de code natif n'est pas disponible.
     
    Code erreur : 1185
    Niveau : erreur fatale (EL_FATAL)
     
    Dump de l'erreur du module 'wd180vm.dll' (18.0.150.3).
    Identifiant des informations détaillées (.err) : 1185
    Informations supplémentaires :
    EIT_PILEWL :
    Clic sur BTN_Envoi (FEN_Requete.BTN_Envoi), ligne 38
    EIT_DATEHEURE : 04/09/2014 12:14:56
    la ligne 38 est la suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TraceDDMS("TIRAT", 2, "Lancement en mode : " + cnUtilisation)
    et dans la procédure c'est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    import android.util.*;
     
    public static void TraceDDMS(String sTag,int nType,String sChaine)
    {
    	switch (nType){
    		case 1 :
    		Log.d(sTag,sChaine);
    		break;
     
    		case 2 : 
    		Log.i(sTag,sChaine);
    		break;
     
    		case 3 :
    		Log.e(sTag,sChaine);
    		break;
     
    		case 4 : 
    		Log.v(sTag,sChaine);
    		break;
     
    		case 5 : 
    		Log.w(sTag,sChaine);
    		break;
     
    	}
    }
    je ne sais pas quoi faire. Je ne trouve rien sur android.util
    est ce que c'est un exécutable que je dois avoir sur mon poste.

    Cordialement Law56100

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    325
    Détails du profil
    Informations personnelles :
    Localisation : France, Morbihan (Bretagne)

    Informations forums :
    Inscription : Mars 2008
    Messages : 325
    Points : 150
    Points
    150
    Par défaut
    Question :
    Quand je fait un go à l'aide de windev mobile, le programme plante sur les procédure de type java.
    Par contre cela fonctionne sur la tablette.

    Est ce que c'est normal? Il est impossible de tester ce genre de code avec le go de windev mobile?

  3. #3
    Membre éprouvé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Février 2010
    Messages
    553
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2010
    Messages : 553
    Points : 1 075
    Points
    1 075
    Par défaut
    L'explication est très simple : le simulateur intégré dans WM pour des applications Android ne peut pas exécuter le code Java inclus dans l'application.

    En fait dans ton cas, c'est très simple d'éviter ce souci, car le code qui est inclus est tout simplement une trace de debug qui permet de recupérer des informations lorsque le smartphone est connecté au poste de développement et que l'on a activé les outils de debug d'Android (en l'occurence le DDMS / terminal).

    Ce que fait le code Java en question, c'est envoyer des informations de trace. C'est l'équivalent de la fonction Trace que vous connaissez sans doute en WD. Il n'est donc pas opérationnel et n'a aucune fonction sur le programme lui-même.

    Donc pour éviter ce problème, il suffit d'encadrer ces appels par un test :

    ///////// éviter d'appeler le code java lors des simulations sur le PC //////////////////
    SI PAS EnModeSimulateur () ALORS
    /// le code java n'est pas appelé en mode simulation PC
    TraceDDMS("DEBUGMONAPP",1,"Je suis passé ici")
    FIN

    Le premier string (texte libre) est une chaine qui permet de filtrer les différentes traces, l'integer est le type de trace, et le texte ensuite est libre aussi.

    Le souci avec WM quand on fait du développement Android est qu'on ne dispose d'aucun moyen de debug lorsque le code tourne sur le smartphone. La seule solution est d'utiliser des traces, c'est ce que permet la fonction java en question.

    PS : n'oubliez pas de "plusser" mon post s'il vous plait.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    325
    Détails du profil
    Informations personnelles :
    Localisation : France, Morbihan (Bretagne)

    Informations forums :
    Inscription : Mars 2008
    Messages : 325
    Points : 150
    Points
    150
    Par défaut
    Merci de ta réponse

    Je pensais bien que je ne pouvais pas exécuter du code java avec WM, je l'avais vu sur un de tes anciens posts mais je préférais avoir l'avis d'un expert.

    cordialement Law56100

  5. #5
    Membre éprouvé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Février 2010
    Messages
    553
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2010
    Messages : 553
    Points : 1 075
    Points
    1 075
    Par défaut
    Soyons précis.

    Tu peux exécuter du code Java dans une application android développée avec windev mobile.

    Par contre cette application ne marchera pas dans le simulateur windev mobile sur ton pc mais marchera parfaitement sur le smartphone ou dans l'émulateur du sdk android.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Type incompatible sur l'appel d'une procédure
    Par beegees dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 04/01/2009, 18h13
  2. Réponses: 8
    Dernier message: 11/11/2008, 17h33
  3. Yes::Engine, plantage sur appel openGL
    Par deadalnix dans le forum OpenGL
    Réponses: 15
    Dernier message: 20/08/2007, 16h10
  4. Help sur construction procédure mémorisée Java
    Par homer__rules dans le forum DB2
    Réponses: 3
    Dernier message: 18/05/2006, 14h18
  5. Réponses: 1
    Dernier message: 14/04/2006, 13h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo