Проверьте, используются ли в данный момент услуги определения местоположения
Моя цель - проверить, использует ли взломанный iPhone какой-либо фоновый навигационный сервис.
Я прошел в основном через CLLocationManager.h
заголовок, но искал подходящие методы во всех остальных CoreLocation
заголовки. Не нашел ничего полезного. Также искал методы в приватной среде GeoServices
, Но это настолько обширно, я не уверен, где искать.
Однако теперь я думаю о проверке, использует ли телефон местоположение в фоновом режиме, проверяя, показывает ли стрелка местоположения.
Как мне поступить и проверить это?
1 ответ
Вот что я использую в iOS 9. Если я правильно помню, appsUsingLocationWithDetails
возвращает словарь всех приложений, которые зарегистрированы для служб определения местоположения. LocationTechnologiesInUse
содержит массив технологий, используемых приложением для обновления данных о местоположении, но их значения мне неизвестны. Вероятно, какое-то перечисление со значениями, указывающими, что используются GPS, точки доступа WiFi, вышки сотовой связи или что-то еще. На самом деле это не имеет значения, поскольку массив будет содержать что-то, только если в данный момент приложение использует службы определения местоположения. Вот пример:
for (NSDictionary* app in [[CLLocationManager sharedManager] appsUsingLocationWithDetails].allValues)
{
if ([app[@"LocationTechnologiesInUse"] count] > 0)
{
//the app uses location services
}
}
Возможно, вам понадобятся некоторые права для доступа к этой информации. Мой демон подписан этими правами с логическим значением true.
com.apple.locationd.authorizeapplications
com.apple.locationd.preauthorized
com.apple.locationd.effective_bundle
com.apple.locationd.status
com.apple.CoreLocation.PrivateMode
Попробуйте использовать их, если мой пример кода не работает для вас. С тех пор, как я написал этот фрагмент кода, прошло много времени, и, к сожалению, я не документировал все права. Мой демон уже был подписан с этим, и код выше просто работал, так что, возможно, что-то нужно, а может и нет.