Мое приложение iphone аварийно завершает работу при первом открытии проекта - PullRequest
0 голосов
/ 03 апреля 2011

Он падает только один раз, а затем работает нормально.

Вот проект: http://www.mediafire.com/?p0dy7g5ozkl69jt

1 Ответ

0 голосов
/ 03 апреля 2011

У вас проблема с памятью при попытке получить доступ к освобожденному NSURL в вашем GetXML классе ... Там:

- (void)main {
    [UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
    >> NSData *xml = [NSData dataWithContentsOfURL:url];
...

Для диагностики используйте NSZombiesEnabled, объясненный там.

Чтобы исправить ваш сбой, убедитесь, что вы retain или copy свой URL в вашем классе GetXML:

- (id)initWithURL:(NSURL*)newURL delegate:(id <GetXMLDelegate>)newDelegate
{
    self = [super init];
    url = [newURL copy]; // there
    delegate = newDelegate;

    return self;
}

и чтобы избежать утечки памяти, убедитесь, чтоваш релиз, что URL

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

непроверенный код, но должен работать ... Вы должны перечитать документацию Apple по управлению памятью ...;)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...