Каждый раз, когда пользователь нажимает кнопку «Домой», пока мое приложение активно, я получаю следующее исключение. Небольшое предостережение. Пример исключения ниже ссылается на NSCFString
. Однако тип объекта, который получает это сообщение и, таким образом, вызывает исключение, является абсолютно случайным. Это может быть NSData
или OS_dispatch_queue_specific_queue
.
[__NSCFString didEnterBackground:]: нераспознанный селектор отправлен в экземпляр 0x155344c0 * Завершение работы приложения из-за необработанного исключения «NSInvalidArgumentException», причина: «-[__NSCFString didEnterBackground:]: нераспознанный селектор отправлен в экземпляр 0x155344c0
Происходит каждый раз, когда приложение становится активным, но объект, получающий сообщение, никогда не бывает одинаковым.
Я предполагаю, что это какая-то проблема с памятью, но у меня возникли проблемы с ее отслеживанием. В основном потому, что ничто в моем коде никогда напрямую не отправляет/не получает это сообщение и не зарегистрировано для получения UIApplicationWillResignActiveNotification
. Кроме того, в моем appDelegate нет ничего для метода applicationDidEnterBackground:application
.
Кто-нибудь когда-нибудь видел такое поведение? И если да, то как лучше отладить? Или, может быть, по-другому, каким объектам будет автоматически отправлено сообщение didEnterBackground
, с которым я явно плохо справляюсь?