applicationWillTerminate и фон: ужасно перепутанный

Я понимаю, что applicationWillTerminate больше не называют в iOS4, практически. Но у меня есть эта ситуация:

  • моя аудиокнига входит в фоновый режим и продолжает играть аудио;
  • до версии 3.x SDK я сохранил точку, где каждый слушал файл MP3 в applicationWillTerminate;
  • теперь мне сказали сохранить это сохранение в applicationWillTerminate (для iPhone 3G) и реализовать тот же метод в applicationDidEnterBackground: но это сохраняет НЕ точку, где пользователь был в конце, просто точка, когда он ввел фон...

Но, который является моментом или лучше вызываемым методом, где пользователь выходит из приложения от прикрепления приложения? Это существует?

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

Я повторяюсь: applicationDidEnterBackground не помогает мне, потому что, когда пользователь входит в фоновый режим, он может оставаться в этом положении, в течение долгого времени слушая аудиокнигу и когда он запускает снова приложение, после того, как это закрывается, я имею в виду, он найдет положение звукового файла, когда он ввел фоновый режим …

Я действительно смущен …

Спасибо за помощь!

1
задан Fabio Ricci 10 July 2010 в 11:14
поделиться

1 ответ

Вы должны автоматически сохранить место воспроизведения в applicationWillResignActive:, applicationDidEnterBackground: независимо от того, продолжает ли аудио играть или нет. Затем поместите еще одно сохранение в applicationWillTerminate. Таким образом, последнее место воспроизведения сохраняется независимо от того, что происходит дальше. Следующее событие просто перезаписывает сохраненное место воспроизведения, чтобы обновить его.

Еще лучшим вариантом было бы, чтобы сам объект аудиоплеера запускал сохранение всякий раз, когда он прерывается, например [AVAudioPlayerDelegate audioPlayerBeginInterruption:] или подобный. Это может потребовать дополнительной работы, но это будет гарантировать, что место воспроизведения всегда будет сохранено независимо от причины прерывания.

2
ответ дан 2 September 2019 в 23:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: