Начиная с iOS 9, Apple решила заблокировать sysctl, который предоставил список запущенных процессов (https://developer.apple.com/videos/wwdc/2015/?id=703).
После поиска частных API-интерфейсов я нашел класс с именем "THIRDPartyApps", который выглядит точно так, как мне нужно (имя процесса и использование данных в WiFi и WWAN). Но я не знаю, как получить список THIRDPartyApps.
Кто-нибудь знает, как это работает?
Изменить:
Найдено через Symbolication.framework 2 класса: VMUProcList и VMUProcInfo. В первом есть метод, называемый allProcInfos, возвращающий NSArray из VMUProcInfo.
Работает на устройстве 7.1.2 (я полагаю, что он тоже работает на устройствах 8.X), но больше не работает на устройстве iOS 9. У меня красивая ошибка в консоли:
Сбой вызова sysctl для получения размера буфера списка процессов: операция не разрешена