2010-08-03 18 views
0

Je travaille sur une application qui permet de suivre l'emplacement d'un utilisateur. Après environ 20 minutes, il semble que l'application se bloque toujours, et je ne sais pas pourquoi. Les journaux de périphériques affichent:iPhone: crash de l'application dans MapView après 20 min

Exception Type: EXC_BAD_ACCESS (SIGSEGV) 
Exception Codes: KERN_INVALID_ADDRESS at 0x069f6000 
Crashed Thread: 0 

Thread 0 Crashed: 
0 Ride       0x00012e00 -[Route addCoordinate:] (Route.m:92) 
1 Ride       0x0000877a -[MyRidesMapViewController locationManager:didUpdateToLocation:fromLocation:] (MyRidesMapViewController.m:528) 
2 CoreLocation     0x0000931c -[CLLocationManager onClientEventLocation:] + 584 
3 CoreLocation     0x00007552 -[CLLocationManager onClientEvent:supportInfo:] + 98 
4 CoreLocation     0x000076a0 OnClientEvent + 16 
5 CoreLocation     0x00002ade CLClientInvokeCallback(__CLClient*, CLClientEvent, __CFDictionary const*) + 42 
6 CoreLocation     0x0000512c CLClientHandleDaemonDataLocation(__CLClient*, CLClientLocation const*, __CFDictionary const*) + 204 
7 CoreLocation     0x0000528a CLClientHandleDaemonData(__CFMessagePort*, long, __CFData const*, void*) + 298 
8 CoreFoundation     0x0006936a __CFMessagePortPerform + 242 
9 CoreFoundation     0x00071aa4 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 20 
10 CoreFoundation     0x00073848 __CFRunLoopDoSource1 + 160 
11 CoreFoundation     0x00074626 __CFRunLoopRun + 514 
12 CoreFoundation     0x0001d8e4 CFRunLoopRunSpecific + 224 
13 CoreFoundation     0x0001d7ec CFRunLoopRunInMode + 52 
14 GraphicsServices    0x000036e8 GSEventRunModal + 108 
15 GraphicsServices    0x00003794 GSEventRun + 56 
16 UIKit       0x000062a0 -[UIApplication _run] + 396 
17 UIKit       0x00004e10 UIApplicationMain + 664 
18 Ride       0x00002a20 main (main.m:14) 
19 Ride       0x000029d4 start + 32 

On dirait que j'essaie de publier quelque chose qui a déjà été publié, mais quoi ?! J'ai NSZombie activé, et cela ne semble pas aider.

Cela avait l'habitude de travailler, et j'ai récemment mis à jour ma classe pour utiliser soi-même. pour tout ce que j'ai synthétisé, cela pourrait-il être le problème?

EDIT: J'ai mis à jour l'erreur. Il semble y avoir une liste des numéros de ligne pour chaque ligne, mais ils ne semblent pas aider à trouver le problème.

Répondre

2

Avez-vous activé NSZombie pendant que vous utilisez l'appareil? Si c'est le cas, vous avez peu de mémoire. Comme vous le savez, NSZombie conserve les objets libérés afin que vous puissiez détecter une double libération.

Cependant, vous avez probablement des problèmes de mémoire. L'analyseur statique vous montre-t-il quelque chose? (Maj-commande-A).

+0

Vous savez quoi, je fais! Merde, laisse-moi éteindre ça et voir mes problèmes disparaître. Et oui, l'utilisation de l'analyseur statique montre certains problèmes sur lesquels je vais travailler ... –

+0

OK ... publie des exemples de code dont l'analyseur se plaint si la solution n'est pas évidente. –

+0

Ok, enlever NSZombie n'a pas aidé. J'ai mis à jour le post ci-dessus avec l'erreur mise à jour. Il semble toujours que cela a à voir avec les lieux, et peut-être dessiner mon itinéraire sur la carte. –

-1

La définition du délégué du gestionnaire d'emplacement à zéro ET ALORS le libérer a corrigé le problème pour moi.