Запустил шаблон Cocos2D 2.1 (без физического движка) в Xcode 4.5, предназначенный для iOS 6 и iPad. В файле CDAudioManager.m следующий код...
AVAudioSession* session = [AVAudioSession sharedInstance];
session.delegate = self; // Which is what is automatically generated by the template.
... генерирует следующее предупреждение...
"delegate deprecated: first deprecated in iOS 6"
Итак, я обращаюсь к документации разработчика Apple, и в разделе «Делегировать» говорится: «Устарело в iOS 6.0. Вместо этого используйте уведомления, описанные в разделе «Уведомления» этого класса».
Проблема в том, что мне кажется, что все, что мы пытаемся сделать — простите мою неопытность — установить делегата для AVAudioSession в сам экземпляр CDAudioManager. Как уведомления делают это? Или я просто ошибаюсь в отношении цели приведенного выше кода?