Удаление приложения из фона при отладке - PullRequest
1 голос
/ 21 марта 2011

Я отлаживаю проблему для моего приложения в iOS 4 и выше, где оно не сохраняет прогресс, когда оно закрыто.Я использую Xcode 4.0 и запускаю его в симуляторе, и, когда я закрываю приложение в симуляторе, удаляю его из фоновой панели приложений, а затем снова запускаю из симулятора, кажется, что он разрывается в строке возврата ниже:

int main(int argc, char *argv[]) {

    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
    int retVal = UIApplicationMain(argc, argv, nil, nil);
    [pool release];
    return retVal;
}

Цитируется «Поток 1: Программа получила сигнал:« SIGKILL », и я не совсем уверен, что с этим делать (также я только недавно освоил Xcode 4).

Может ли кто-нибудь объяснить, что здесь происходит, могу ли я просто отлаживать, когда я прикрепляю приложение в фоновом режиме (и / или удаляю его), или это потенциально указывает на мою проблему с прогрессом сохранения? Я в основном запускаю сохранениекогда мой главный делегат получает:

- (void)applicationWillTerminate:(UIApplication *)application

1 Ответ

3 голосов
/ 22 марта 2011

Вы должны сохранить в applicationDidEnterBackground:, а не applicationWillTerminate:.Когда приложение в фоновом режиме закрыто, оно удаляется без отправки applicationWillTerminate: (это SIGKILL, который вы получаете).Однако, если вы поддерживаете устройства или версии без многозадачности, вам также необходимо сохранить в applicationWillTerminate:, так как он используется в этих обстоятельствах.

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