У меня есть приложение ios, которое принимает звук с микрофона телефона, выполняет некоторую обработку данных микрофона в режиме реального времени и отправляет результат в наушники
В проекте -> Возможности -> Фоновые режимы я выбрал Аудио, AirPlay и Картинка в картинке
Я хочу, чтобы приложение продолжало считывать данные с микрофона и отправлять аудио в наушники, когда приложение находится в фоновом режиме (пользователь нажимает кнопку «Домой») и когда экран телефона заблокирован с помощью кнопки блокировки
Все это происходит, так что я не думаю, что есть какие-либо проблемы с разрешениями приложения, но я заметил, что после того, как приложение установлено на заднем плане, оно внезапно уничтожается, обычно менее чем за минуту
Мне удалось поймать экземпляр приложения, убитого в фоновом режиме в консоли xcode, и сообщение было
Message from Debugger: terminated due to signal 9
Просмотр в Google показывает, что это просто означает, что приложение было уничтожено ОС с помощью SIGKILL
Есть ли способ узнать, почему приложение было убито? Разве невозможно поддерживать приложение в фоновом режиме в течение длительного времени? До того, как я включил Audio, AirPlay and Picture in Picture
фоновый режим, звук останавливался, как только я нажимал кнопку «Домой» или кнопку блокировки экрана. Я предполагаю, что, поскольку звук продолжает работать, когда я нажимаю кнопку «Домой», это означает, что я действительно могу запускать микрофон / динамик в фоновом режиме, если нужно, и есть музыкальные проигрыватели, а также приложения для записи звука, которые работают в фоновом режиме. пока пользователь специально не закроет их.
Как узнать точную причину, по которой мое приложение закрывается автоматически, и что я могу сделать, чтобы оно продолжало работать в фоновом режиме до тех пор, пока пользователь не закроет его?