Ho un errore in cui la mia applicazione si è bloccata "EXC_BAD_ACCESS" quando ho premuto il tasto Indietro sulla mia barra di navigazione e la vista scaricata che aveva un MapKit (mapView) e utilizzato il Location Manager. Provato per giorni per correggere il bug e, infine, si avvicinò con una soluzione per tutti coloro che si imbatte in questo problema:MapKit/Location Manager interrompe l'app quando si scarica vista
Aggiungi questo codice al vostro dealloc
- (void)dealloc {
mapView.delegate = nil;
locationManager.delegate = nil;
[mapView release];
[locationManager release];
}
Grazie, amico! La cosa strana è che non puoi riprodurlo nel simulatore. –
Fornisci ulteriori dettagli di implementazione. Sembra un obj. è già stato rilasciato. A proposito, è buona abitudine rinunciare al delegato in dealloc. – kompozer
Senza vedere i registri degli arresti anomali non è in grado di dirlo. Ma sembra che tu rilasci qualcosa due volte. prova ad aggiungere NSZombieEnabled, questo ti dirà se stai tentando di accedere a qualcosa che è già stato rilasciato in memoria. – CW0007007