На всякий случай, если кто-то еще ищет здесь ответ, я начал работать, добавив массив UIBackgroundModes в список, добавив 'audio' в качестве элемента 0.
Я освобождаю всю память / контроллеры при выходе, как и при выходе из приложения, так что все, что осталось, это буферы, которые использует приложение (я выделил около 1 Мб, хотя я немного нервничаю, хотя кажется, что сработало!) Полагаю, снижение точности также поможет, но, похоже, работает как есть.
В моей основной настройке аудио мне пришлось либо изменить размер буфера с 1024 на 4096, либо явно установить размер буфера ... Я выбрал последний, поскольку задержка была проблемой.
NSTimeInterval iobuffersize = (float)1024.0f/SAMPLE_RATE);
sizeofdata = sizeof(iobuffersize);
AudioSessionSetProperty(kAudioSessionProperty_PreferredHardwareIOBufferDuration, &sizeofdata, &iobuffersize);
Я также должен был убедиться, что оно не убивало приложение при выходе, не включив опцию «Не запускается в фоновом режиме», однако это все равно должно быть отключено по умолчанию.
Так что, полагаю, я отвечаю на это для спокойствия за всех, что он работает без особых настроек.
Однако у меня возникают проблемы с настройкой Bluetooth, я думаю, это потому, что размеры буфера снова меняются, но я не могу это выяснить ... просто получить -50 = предупреждение о недействительном свойстве при рендеринге данных с помощью recordCallback. Я предполагаю, что это размер частоты / выборки, но кто знает ... будет выглядеть позже, но кажется, что фон теперь работает.