Android dibuja una ruta en un mapa Vista desde una gran cantidad de puntos de longitud / latitud

Estoy escribiendo una aplicación que necesita dibujar una "ruta" compuesta de muchos puntos GPS (largo + lat). Los puntos están muy juntos y no siguen caminos, simplemente dibujar una línea entre cada punto es ideal.

La implementación actual que tengo es muy lenta ya que estoy recorriendo todas las coordenadas GPS y creando un nuevo Punto y elemento de superposición en una superposición detallada. Esto toma alrededor de 20 segundos para cargar todos estos puntos y atraerlos a la vista del mapa. ¿Hay alguna manera de construir una serie de líneas o puntos a partir de las coordenadas GPS y dibujarlas en la vista del mapa?

Ejemplo de implementación actual:

 for each set of long+lats // removed to simplify
    point= new GeoPoint(latitude,longitude);
    overlayitem = new OverlayItem(point,"","");
    itemizedOverlay.addOverlay(overlayitem);
 mapOverlays.add(itemizedOverlay);
 mMapController.setCenter(point);

Gracias de antemano, espero haberlo explicado lo suficientemente bien.

Respuestas a la pregunta(2)

Su respuesta a la pregunta