2013-09-27 11 views
5

ho caricato l'applicazione e ottenere respinta dicendoEXC_BAD_ACCESS (SIGSEGV) - KERN_INVALID_ADDRESS

Abbiamo scoperto che la vostra applicazione si è schiantato su iPad con iOS 7, che non è in conformità con le linee guida Recensione App Store.

Bene, quando ho caricato, iOS7 non è stato avviato.

La relazione crash dice

Exception Type: EXC_BAD_ACCESS (SIGSEGV) 
Exception Subtype: KERN_INVALID_ADDRESS at 0xb1b1f20b 

Thread 0 name: Dispatch queue: com.apple.main-thread 
Thread 0 Crashed: 
0 libobjc.A.dylib     0x3a2f5b26 objc_msgSend + 6 
1 MapKit       0x30ca46a6 -[MKMapView mapViewDidFinishLoadingTiles:] + 46 
2 VectorKit      0x376bbaf4 -[VKTileSource didFinishWithNetwork] + 68 
3 VectorKit      0x376bc196 __32-[VKTileSource performDownload:]_block_invoke126 + 38 
4 GeoServices      0x345b6fdc ___ZNK49-[GEOTileLoaderInternal _loadedTile:forKey:info:]66__49-[GEOTileLoaderInternal _loadedTile:forKey:info:]_block_invoke3$_1clERKN8LoadItem9RequesterE_block_invoke_2 + 52 
5 libdispatch.dylib    0x3a7ddd78 _dispatch_call_block_and_release + 8 
6 libdispatch.dylib    0x3a7ddd64 _dispatch_client_callout + 20 
7 libdispatch.dylib    0x3a7e47bc _dispatch_main_queue_callback_4CF$VARIANT$mp + 264 
8 CoreFoundation     0x2fab881c __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 4 
9 CoreFoundation     0x2fab70f0 __CFRunLoopRun + 1296 
10 CoreFoundation     0x2fa21ce2 CFRunLoopRunSpecific + 518 
11 CoreFoundation     0x2fa21ac6 CFRunLoopRunInMode + 102 
12 GraphicsServices    0x3471c27e GSEventRunModal + 134 
13 UIKit       0x322c3a3c UIApplicationMain + 1132 

in incidente vediamo MapKit 0x30ca46a6 -[MKMapView mapViewDidFinishLoadingTiles:].

MapKit sta dando problemi?

Per MapKit, qui di seguito è quello che ho

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    self.title = @"Location"; 
    // Do any additional setup after loading the view. 
    CLLocationCoordinate2D cords = {29.32511601390379, 48.08847418705136}; 
    MKCoordinateSpan span = {0.008400,0.008400}; 
    region = (MKCoordinateRegion) {cords,span}; 
    mapView.showsUserLocation = YES; 
    [mapView setRegion:region animated:YES]; 
    [mapView setDelegate:self]; 

    DisplayMap *ann = [[DisplayMap alloc] init]; 
    ann.coordinate = region.center; 
    [mapView addAnnotation:ann]; 
} 

Inoltre non ho dealloc in mapkitviewcontroller. Va bene? Sto chiedendo come questo errore è legato alla gestione della memoria.

La mia app aveva 5 schede. Le prime 4 schede sono solo UIWebView. Per la webview, ho scoperto che non ho inserito la webview in dealloc. Di seguito è quello che ho avuto in Webview,

- (void)dealloc { 
    [super dealloc]; 
} 

In questo momento non ho iOS 7 sul mio xcode troppo. Devo scaricarlo, ma ho pensato di chiedere prima qui.

Nota: Tutto sta funzionando perfettamente con iOS 6.

Qualche ipotesi perché sto ottenendo questo errore?

risposta

0

Quando inserisco mapView in dealloc, il problema viene risolto.

In seguito a ulteriori indagini, ho anche notato che non ho aggiunto il titolo per DisplayMap.

DisplayMap *ann = [[DisplayMap alloc] init]; 
ann.title = @"My Location"; 
+1

hai escluso esplicitamente? Sto avendo lo stesso problema, vedendo crash in un report di Crittercism, ma non riesco a riprodurlo da solo –

+0

@HenrikHartz: prima avevo "ann.title = @" "' –

+0

@HenrikHartz hai trovato la causa? sto vedendo lo stesso problema in un rapporto Crashlytics, ma non riesco a riprodurlo da solo – Chris

4

Ha impostato il delegato della visualizzazione della mappa su zero prima di allontanarsi dalla pagina. Inoltre penso che ci sia un problema di gestione della memoria con le mappe IOS. Quindi è meglio rilasciare le mappe nel metodo dealloc.

+0

hmmm ... Penso anche così ... –

+0

ho risolto il problema impostando il delegato guarda la mappa a zero all'interno metodo dealloc del mio delegato. Non ha molto senso per me poiché l'implementazione di MKMapView da parte di Apple dovrebbe mantenere un debole riferimento al delegato. Ma chi lo sa, forse c'è un codice buggy nell'implementazione di MK 7 di iOS 7. – Chris

Problemi correlati