В моем приложении я рисую полилинию для каждого изменения местоположения, пока я путешествую. Это может быть для 8-часового похода, чтобы я мог нанести десятки тысяч очков.PolyLines на google maps android для каждого изменения местоположения, новых полилиний или setPoints?
В моем тестировании я заметил, что, когда я масштабируюсь довольно близко (скажем, 17 или 18), он отлично работает даже после построения тысяч строк, но когда я уменьшаю масштаб, и карта должна отображать ВСЕ из этих строк, он становится вялым, поскольку мой телефон пытается все обработать.
Другой вариант, который я знаю для рисования полилиний, - создать коллекцию (ArrayList) всех моих точек (LatLng) и передать ее методу setPoints() для PolyLine, который рисует одну строку. Очевидно, что это отлично работает при просмотре трека после этого факта, но я бы предположил, что внутренности setPoints() должны зацикливаться на всем наборе для каждой новой точки, которая добавляется для рисования этой одной строки, что в конечном итоге, вероятно, хуже, он должен делать это, видны ли более старые точки (в пределах области просмотра) или нет.
Есть ли что-то среднее между ними? Метод polyline.addPoint() был бы идеальным, но я не могу найти ничего подобного ... Прямо сейчас, как стоп-пробел, я только что сделал видимость полилиний перекрещиваемым, чтобы скрыть их, когда я увеличиваю масштаб и мне нужно перемещать карту вокруг, как я уже сказал, когда меня приближают, это не проблема, потому что она должна отображать довольно небольшое подмножество.
любые идеи/предложения приветствуются.
TIA