API-интерфейс LocationManager
на Android выглядит немного больно для приложения, которому требуется только случайное и грубое приближение местоположения пользователя.
Приложение, над которым я работаю, на самом деле не является приложением местоположения, но ему нужно получить местоположение пользователя, чтобы отобразить список ближайших предприятий. Не нужно беспокоиться о том, перемещается ли пользователь или что-то в этом роде.
Вот что я хотел бы сделать:
- Покажите пользователю список ближайших местоположений.
- Предварительно загрузите местоположение пользователя, чтобы к моменту, когда он мне понадобится в
Activity
X, он будет доступен. - Я не особо забочусь о точности или частоте обновления. Достаточно хватать одно место, пока оно не выходит. Может быть, если я хочу быть фантазией, я обновляю местоположение раз в несколько минут или около того, но это не огромный приоритет.
- Работайте на любом устройстве, если у него есть GPS или поставщик сетевого местоположения.
Кажется, что это не должно быть так сложно, но мне кажется, что мне нужно развернуть два разных провайдера местоположения (GPS и NETWORK) и управлять каждым жизненным циклом. Не только это, но я должен дублировать один и тот же код в нескольких действиях, чтобы удовлетворить # 2. Я пробовал использовать getBestProvider()
в прошлом, чтобы сократить решение до простого использования одного поставщика местоположения, но это, кажется, дает вам лучший "теоретический" провайдер, а не поставщик, который на самом деле даст вам наилучшие результаты.
Есть ли более простой способ сделать это?