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

Android Discussion :

Problème d'inflating class


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2011
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 47
    Par défaut Problème d'inflating class
    Bonjour à tous.

    Voilà, je vous expose le contexte en premier avant d'entrer dans les détails de l'erreur.
    J'essaye de mettre à jour une application android afin qu'elle soit compatible avec Android 4.2.2. Le problème est que pour le moment lorsque je lance l'application, au cours de l'utilisation pour afficher une carte j'ai le logcat suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    05-13 15:01:50.160: E/AndroidRuntime(932): FATAL EXCEPTION: main
    05-13 15:01:50.160: E/AndroidRuntime(932): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.xxx/com.xxx.ui.map.WorldMapActivity}: android.view.InflateException: Binary XML file line #7: Error inflating class org.mapsforge.android.maps.MapView
    [...]
    05-13 15:01:50.160: E/AndroidRuntime(932): Caused by: android.view.InflateException: Binary XML file line #7: Error inflating class org.mapsforge.android.maps.MapView
    Je me rend dans la classe WorldMapActivity et j'ai le code suivant (je met que ce qui est en relation avec MapView dans le OnCreate)
    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
     
    public class WorldMapActivity extends MapActivity implements ...,...,...,...{
    [...]
    private MapView maps;
    [...]
     protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.world_map);
    [...]
            maps = (MapView) findViewById(R.id.maps);
    [...]
            maps.addChangeListener(winds);
            maps.setClickable(true);
            maps.setBuiltInZoomControls(false);
    [...]
     
    }
    [...]
    }
    Sachant que je comprend pas vraiment le principe des inflating class, et que depuis le début de la journée je n'ai pas trouvé de site m'expliquant concrètement ce que c'était (peut-être par des mauvaises méthodes de recherche, qui sait?). Je me tourne vers vous afin de pouvoir mettre fin à cet épineux problème, et cela grâce à votre aide.

  2. #2
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 281
    Par défaut
    MapActivity est déprécié
    Utilise les fragments et la nouvelle Google Map V2 pour plus de faciliter.

  3. #3
    Expert confirmé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Billets dans le blog
    3
    Par défaut
    l'inflater prend un XML (le "layout") et construit la hierarchie des views.

    Dans le layout il doit donc y avoir un objet "org.mapsforge.android.maps.MapView" qui n'a pu être créé correctement (inflaté).

    La cause de l'exception indique pourquoi (ClassNotFoundException ou autre).

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Février 2011
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 47
    Par défaut
    Donc mon problème est que j'essaye d'inflater une classe dépréciée si je comprend bien?
    Je vais essayer de voir pour l'utilisation des fragments et de Google Map V2.
    Savez vous où trouver une liste des classes dépréciées?

  5. #5
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Par défaut
    Sur la documentation, elles sont clairement indiquées en "deprecated", et normalement, ton IDE devrait aussi te l'indiquer (soit par une coloration particulière, soit par un warning/une erreur).

    Ton problème ne vient pas, à priori, de la dépréciation, par contre. Il faudrait le Stacktrace complet pour en dire plus.
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Février 2011
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 47
    Par défaut
    Bien je me suis mis à Google Map API v2 et j'ai réalisé une application test qui semble fonctionner pour le moment. (Il faudra que je m'assure que ce soit bien le cas au niveau du certificate fingerprint).
    Je vais essayer d'implémenter le tout dans mon application et je reviens ensuite pour vous faire part de mon avancée.

    Edit: Google Map API v2 est une erreur, j'utilise le projet mapsforge. Je vais donc essayer de passer uniquement de MapView à Fragment.

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

Discussions similaires

  1. [RMI] problème Création *_stub.class et *_skel.class
    Par philobedo dans le forum API standards et tierces
    Réponses: 6
    Dernier message: 29/05/2006, 20h03
  2. Problème avec une classe... "without object"
    Par z980x dans le forum C++
    Réponses: 8
    Dernier message: 27/04/2006, 16h00
  3. [PHPMailer] problème avec la classe phpmailer
    Par sansouna24 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 08/04/2006, 16h51
  4. Problème avec la classe Calendar
    Par afrikha dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 30/03/2006, 08h48
  5. Réponses: 9
    Dernier message: 25/09/2005, 16h33

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