Plantage du simulateur sans erreur du compilateur
Pierre
Membre
Bonjour à tous, je suis en train de développer une application et lorsque je la lance dans le simulateur elle plante (suite à une action de ma part), mais sans aucun messages d'erreur.
J'ai mon dernier NSLog qui s'affiche et ensuite :
Comment puis-je savoir d'où vient le problème ? Avez vous une idée de ce que je peut faire pour localiser la source du bug (intercepter ce qui c'est passé en dernier et qui provoque le crash) ?
Merci d'avance pour vos lumières,
Pierre
J'ai mon dernier NSLog qui s'affiche et ensuite :
Session started at 2010-05-13 18:09:11 +0200.]
GNU gdb 6.3.50-20050815 (Apple version gdb-967) (Tue Jul 14 02:11:58 UTC 2009)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i386-apple-darwin".sharedlibrary apply-load-rules all
Attaching to process 75358.
(gdb)
Comment puis-je savoir d'où vient le problème ? Avez vous une idée de ce que je peut faire pour localiser la source du bug (intercepter ce qui c'est passé en dernier et qui provoque le crash) ?
Merci d'avance pour vos lumières,
Pierre
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
@AliGator : je veut bien mettre des break-points mais je sait pas les utiliser. Tu connait une doc qui explique comment les utiliser ?
Pierre
Et puis si tu veux une doc bah... devine quoi ? Pourquoi pas la doc Apple ?
(pour info j'ai juste tapé "breakpoint site:developer.apple.com" dans google...)
Je devrais sérieusement me créer un script qui crée une réponse aux messages redirigeant vers la doc Apple...
Tiens, je vais te faire économiser 30 pages de lecture laborieuse:
[size=18pt]Le débogueur pour les Nuls[/size]
- On met les points d'arrêt où on veut que ça s'arrête, en cliquant dans la marge.
- On lance le programme en choisissant le menu Run > Debug.
- On survole les noms des variables à la souris pour connaà®tre leurs valeurs.
- Quand le programme plante, on peut souvent savoir où rien qu'en regardant dans la fenêtre Debug ("Call Stack").
Je connais le fonctionnement des "breakpoint" en théorie, mais je ne savait pas comment les mettre en place sur XCode et lancer le "pas à pas". Merci maintenant je sait faire et j'y penserais la prochaine fois.
L'erreur que j'ai relevé au moment du plantage c'est :
Je continue à chercher le code qui produit cette erreur pour la patcher.
Pierre
EDIT : j'ai trouvé c'est un NSLog() qui met mon code par terre...
J'ai déclaré la variable suivantes (dans le .h) :
Et j'ai ce code là dans le .m :
[stories count] renvoie un NSInteger. Faut-il le caster en String avant de faie un NSLog dessus ?
Merci encore pour votre aide.
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
NSLog(@numberOfRowsInSection : %@", [stories count]); //Ligne qui fait planter le simulateur
return [stories count];
bonjour,
utilise %d pour afficher un NSInteger
Pierre