0

Предположим, что я использую API с плавным местоположением Android, чтобы запросить точную отчетность о местоположении. Например,Как интервал API fusedLocation относится к отключению GPS-радио

mLocationRequest = new LocationRequest(); 
    mLocationRequest.setInterval(FASTEST_UPDATE_INTERVAL*2); 
    mLocationRequest.setFastestInterval(FASTEST_UPDATE_INTERVAL); 
    mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY); 

    LocationServices.FusedLocationApi 
       .requestLocationUpdates(mGoogleApiClient, mLocationRequest, this) 

Это приводит к моему месту расположения слушателя вызывался до каждого FASTEST_UPDATE_INTERVAL. Если я установлю FASTEST_UPDATE_INTERVAL на короткое, я знаю, что GPS-радио не будет отключено между обновлениями местоположения. Я знаю это из разных источников, таких как Fused Location Provider unexpected behavior и https://www.quora.com/Why-does-GPS-use-so-much-more-battery-than-any-other-antenna-or-sensor-in-a-smartphone.

Вопрос: что представляет собой наименьшее значение FASTEST_UPDATE_INTERVAL, которое приведет к отключению GPS-радиостанции между обновлениями местоположения?

Я ожидаю, что на этот вопрос не будет ясного ответа, и это будет зависеть от аппаратного обеспечения телефона, версии Google Play и, возможно, от других аппаратных и программных факторов. Тем не менее, общий ответ был бы полезен.

Этот вопрос важен, потому что меня интересует использование высокоточного определения местоположения, но минимальное использование батареи. В какой-то момент я рад увеличить FASTEST_UPDATE_INTERVAL, если он сэкономит электроэнергию.

Было бы неплохо, если бы службы плавного доступа Google использовали детекторы движения устройства (если они существуют), чтобы работать, когда они были стационарными, и если бы так просто отключили радиостанцию ​​GPS до тех пор, пока устройство не переместилось.

ответ

0

Даже если вы нашли ответ, я бы не стал рассчитывать на то, что он остался прежним между устройствами, версиями ОС или версиями Google Play. Если вы абсолютно не хотите GPS, не используйте плавкий провайдер. Используйте сетевой провайдер из базового LocationManager.

Что касается использования детектора движения - их не существует. У него есть акселерометр, но для того, чтобы акселерометр оставался неподвижным и перемещался с постоянной скоростью 50 миль в час, выглядят точно так же (движение с постоянной скоростью равно 0 ускорениям). В любом случае, это может быть не очень хорошая оптимизация - получение блокировки на нескольких спутниках GPS занимает несколько секунд. Вы не хотите, чтобы он включал и выключал, если кто-то хочет точности.

+0

Возможно, вы правильно относитесь к детекторам движения, которые не существуют в текущем уроке устройств. Но они будут существовать очень скоро, если они еще не используются. Есть много сопроцессоров слияния датчиков, которые обнаруживают движение, и я знаю, что одна силиконовая компания интегрирует их в свои ASIC. Одним из примеров является http://www.pnicorp.com/products/sentral-sensor-fusion/, который соединяет гироскопы, акселерометры и магнитные датчики. Тем не менее, ваша точка стоит для текущих устройств, поэтому мы не можем ожидать, что Android еще будет использоваться для обнаружения движения в рамках своего программного обеспечения с плавным местоположением. – pbm

+0

Возможно, если OEM-производители считают, что для них достаточно использования, чтобы дать им конкурентное преимущество. Но даже если каждый OEM решит разместить их во всех своих флагманских устройствах в конце 2016 года, он не ударит по большинству устройств в течение полутора десятилетий, основываясь на средней скорости оборота. Пока их не существует. Мне также очень любопытно, как вы думаете, что они будут делать постоянное движение, потому что гироскопы, акселерометры и магнитосенсоры не могут. –

+0

Полностью сконфигурированное местоположение, которое использует GPS, гироскопы, акселерометры и магнитосенсоры, может легко обнаружить постоянное движение. Все это в программном алгоритме. Предположим, что все датчики включены, и вы получаете три точных показания GPS на расстоянии 10 секунд, что говорит о наличии постоянного движения. Теперь вы можете предположить, что это движение остается постоянным, пока другие датчики не скажут вам об ином. Вы можете отключить GPS-радио, пока другие датчики не покажут изменение движения. – pbm

Смежные вопросы