Зависит от того, откуда вы получаете данные ориентира.Если вы хотите выполнить веб-запрос, вы можете выполнить одно из указанных выше действий.
В качестве альтернативы - если у вас есть свои собственные данные, вы можете сохранить их в БД со значениями lat и lon, а затем сформировать ограничивающиепрямоугольник для запроса.В этом Вопросе рассказывается, как рассчитать ограничивающий прямоугольник, охватывающий заданный радиус вокруг текущей точки (это будет прямоугольник, поэтому он будет больше, чем круг ....
Как рассчитатьограничивающий прямоугольник для заданного местоположения широты / долготы?
Используя ограничивающий прямоугольник, теперь вы можете сделать запрос из своего db where lat < maxlat and lat > minlat and lon > minlon and lon < maxlon
, который даст вам все ваши достопримечательности в этом блоке.
Затем, используя класс Location в API Android, вы можете получить его, чтобы рассчитать азимут и расстояние до каждого из попаданий, а затем, например, можете отсортировать по радиусу от вашей позиции.