#ios #twilio #voip #callkit #pushkit
#iOS #twilio #VoIP #callkit #pushkit
Вопрос:
Наше приложение для iOS интегрируется с Twilio и настроено на получение уведомлений PushKit VoIP.
Иногда и неопределенно приложение завершает работу перед запуском, что не позволяет нам обрабатывать push-уведомления. Это происходит только тогда, когда приложение было полностью принудительно закрыто.
Provision violated for watchdog process-launch: <FBSProcessResourceProvision: 0x281e68880; allowance: <; FBSProcessResourceAllowance; type: scheduledTime; timeValue: 5.0s>; violated: YES>
Кодовый путь для обработки уведомления более или менее передает его непосредственно в Twilio, затем принимает результирующие структуры CallKit и пытается открыть CallKit. Ни один из этих путей к коду не выполняется (или, по крайней мере, не регистрируется) при возникновении этого сбоя.
С чего я могу начать, чтобы понять, почему нарушается норма ресурсов?
Комментарии:
1. Привет, @Patrick, вы зарегистрировались для получения уведомлений PushKit? Не могли бы вы указать свой код AppDelegate, чтобы я мог попробовать то же самое. Я уже реализовал вызов с помощью Twilio, и у меня все работает на 100% нормально.
2. Я думаю, что приведенный выше журнал, которым вы поделились, принадлежит системе, а не вашему приложению. Должно быть, ваше приложение столкнулось с какой-то другой проблемой
Ответ №1:
Не уверен в аббревиатуре, но если она обозначает FrontBoardServices, то запуск вашего приложения, похоже, занимает много времени.
Проверьте свой AppDelegte. Что там запущено, что может блокировать, и может ли оно быть перемещено в другой поток?
Еще одна ошибка: PKRegistryDeleagte необходимо зарегистрировать во время запуска или как можно быстрее, иначе вы никогда не получите Push.
Комментарии:
1. В частности, решение состояло в том, чтобы сделать ассоциацию делегатов реестра первым, что вызывается в
didFinishLaunching
методе. Если бы мы попытались выполнить какое-либо создание иерархии представлений заранее, мы столкнулись бы с проблемой.