iPhone - отправьте событие объектам, чтобы сообщить им, что приложение находится в фоновом режиме - PullRequest
1 голос
/ 23 июля 2011

У меня есть несколько задач, которые выполняют некоторые задания, и я бы хотел направить им событие, когда приложение переходит в фоновый режим.

Для этого я планирую заставить их во время компиляции реализовать метод, подобный - (void) doWhatNeededBecauseAppHasGoneInBackground;

Как мне это сделать?

Существует ли распространенный способ для маршрутизации к существующим объектам в памяти факт, что приложение ушло или будет идти в фоновом режиме? Я имею в виду, не рискуя пропустить некоторые реализованные методы? Я вижу, что каждый класс, который вызывается с помощью [MyClass copy], должен реализовывать протокол NSCoding, и для этого он должен реализовывать некоторые методы. Может ли это быть идеей?

1 Ответ

3 голосов
/ 23 июля 2011

Когда приложение переходит в фоновый режим, отправляется UIApplicationDidEnterBackgroundNotification (iOS 4.0 и более поздние версии).Сделайте так, чтобы ваши объекты соблюдали это уведомление:

[[NSNotificationCenter defaultCenter] addObserver:self
                                         selector:@selector(doWhatNeededBecauseAppHasGoneInBackground)
                                             name:UIApplicationDidEnterBackgroundNotification
                                           object:nil];
...