Android WiFi Direct Discovery и время работы от батареи

Я пытаюсь использовать Wifi P2P NSD, чтобы разделить небольшую строку между телефонами и «концентраторами» (соответственно серверами и клиентами)

Так как телефоны перемещаются, и концентраторы будут находиться в фиксированных местах (думаю, маяки), было бы идеально, если бы телефон постоянно рекламировал свой сервис и свою запись DNS. Я выполняю следующее:

mManager = (WifiP2pManager) getSystemService(Context.WIFI_P2P_SERVICE); mChannel = mManager.initialize(this, getMainLooper(), null); mRecord = new HashMap<String, String>(); mRecord.put(AppConstants.RECORD_KEY, val); mService = WifiP2pDnsSdServiceInfo.newInstance( AppConstants.SERVICE_INSTANCE, AppConstants.SERVICE_REG_TYPE, mRecord); mManager.addLocalService(mChannel, mService, addServiceListener); mManager.setDnsSdResponseListeners(mChannel, dnsSdServiceResponseListener, dnsSdTxtRecordListener); mManager.addServiceRequest(mChannel, mRequest, addServiceRequestListener); mManager.discoverServices(mChannel, serviceDiscoveryListener); 

После совершения вызова DiscoverServices служба находится в фреймворке, который будет выглядеть по-разному (если я не очистил его или не закрою канал / сбросить Wi-Fi).

Тем не менее, я сжигаю тонну батареи. Просто глядя на настройки батареи в системе, похоже, что Google Play Services сжигает большую часть моей батареи, в то время как ничто не связано с компонентом Wifi. Кроме того, в моем базовом состоянии (в режиме полета, выключенном экране, Wi-Fi, но бездействует), телефон переходит на чертеж ~ 20 мА, а после выполнения вышеуказанного кода один раз он не опускается ниже ~ 130 мА от батареи.

Мой вопрос: что именно происходит, это потребление батареи? Поддерживает ли только инфраструктуру, поддерживая Wi-Fi или телефон, и существует ли какой-либо способ этого? Я просто смущен, потому что утечка батареи, похоже, не связана с отсутствием холостого хода компонента wifi.