Как я могу получить уведомление, если не могу найти местоположение для GPS?

1

Например, я внутри здания, и я хочу получить свое местоположение с точностью 0,75 (Criteria.ACCURACY_FINE), и это будет использовать gps, если мой gps включен. Поскольку я внутри здания, gps не будет работать.

Как я могу определить, действительно ли невозможно получить местоположение исправления gps?

Будет вызываться onLocationChanged(Location arg0), даже если при использовании LocationListener?

Можно ли использовать тайм-аут в запросе местоположения gps, чтобы я мог перейти в сеть в качестве провайдера местоположения, если я не могу получить какое-либо местоположение?

Теги:

1 ответ

2
Лучший ответ

Я вижу три основные возможности:

  • Установите локатор LocationListener, а затем определить его на основе onStatusChanged. Меня беспокоит что я не уверен, насколько хорошо андроид может определить разницу между OUT_OF_SERVICE и ВРЕМЕННО НЕДОСТУПЕН. я бы надеемся, что его основанный на сигнале силы, но, вероятно, что-то для проверки.
  • Просто слушайте оба. Если у вас нет слышал от (более точного) поставщика gps в течение определенного периода времени, затем переключитесь на менее надежных подходов. Это может потреблять больше энергии из-за требования контролировать несколько источников местоположения одновременно, но, вероятно, самый надежный метод в противном случае.
  • Некоторые гибриды 1 и 2 выше (gps, но переключаются на локальные, если пока нет результатов)... это может быть наиболее эффективным, но сложнее реализовать.
  • 0
    Используя предложение № 2, можете ли вы предложить, как я могу реализовать «таймер», чтобы при заданной продолжительности, если я не слышал от провайдера GPS, я могу переключиться на провайдера сети.
  • 0
    Используя ваше предложение № 2 работает.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню