Вопрос

Мое приложение требует текущего местоположения пользователя. Для этого я внедрил код, и я могу получить текущее местоположение. Кодекс пытается сначала получить лучший провайдер, а затем выбрасывает информацию о местонахождении. Проблема в том, что текущее местоположение возвращается из Network_Provider, если GPS_Provider отключен. Если оба Network_Provider и GPS_Provider включены, то лучший поставщик будет GPS_Provider, и это занимает слишком много времени, чтобы получить текущее местоположение.

Итак, это в порядке, если мы установим поставщик местоположений в виде Network_Provider только так, чтобы он не имел вам неважно, включен ли GPS_Provider или нет.

Пожалуйста, дайте мне знать, какой правильный подход.

С уважением

Солнце

Это было полезно?

Решение

В зависимости от вашего приложения вы можете использовать просто местоположение сети. Это достаточно прекраснозерно для многих услуг на основе местоположения. Кроме того, вам не нужно беспокоиться о сосете аккумулятор пользователя с GPS-радио.

Но если вы действительно хотите, насколько это возможно, как можно точнее, почему бы не слушать обе провайдеры? Вы могли бы использовать getLastKnownLocation() Способ исходного местоположения. Тогда вы можете использовать NETWORK_PROVIDER место нахождения. Тогда, как только вы получите исправление от GPS_PROVIDER, вы можете игнорировать или удалить прослушиватель сети.

Другие советы

GPS дает лучшую точность, чем поставщик сети.

Сетевой провайдера выполняется с использованием триангуляции клеточных башен и WiFi.

Итак, если вам нужно немедленно, начните с «последнего известного местоположения», затем переключитесь в сеть, после того, как у вас будет исправление от GPS, начните его использовать.

С уважением, Vinay.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top