У вас есть пара возможностей, создайте свой собственный объект, похожий на MapView, чтобы обеспечить прокрутку или наложение вашей карты на Google Api. Пример использования MapView Api доступен в руководстве разработчика Location .
Сделать это через собственный вид будет проще, если вы понимаете основы графического программирования и преобразования для масштабирования и панорамирования. (Если вы хорошо разбираетесь в математике, учиться не составит труда). Используйте ImageView с android:scaleType="matrix"
переопределением обработчика MotionEvent, чтобы получить прикосновения, а затем обработать их в матрицу преобразования и масштабирования.
Чтобы связать индикатор с изображением, сделайте два пикселя в опорных точках, которые соответствуют реальным широте / долготе. Обычно его (0,0) и (ширина, высота) прямоугольного изображения. Сделайте вашу жизнь проще и убедитесь, что изображения в масштабе. Затем с помощью второго ImageView (для индикатора) нарисуйте его сверху и переместите в правильное место на экране и убедитесь, что фон в этом представлении прозрачен, а также фон вашего индикатора, или у вас будет прямоугольный блок "гало".
Обязательно проверьте точность каждого местоположения, заданного LocationManager.
Дополнительный контент
onCurrentPosition(Location current){
double hypotenuse = upperLeft.distanceTo(current);
double bearing = upperLeft.bearingTo(current);
double currentDistanceX = Math.cos(bearing) * hypotenuse;
// "percentage to mark the position"
double currentPixelX = (currentDistanceX / upperLeft.distanceTo(lowerRight) * Math.cos(upperLeft.bearingTo(lowerRight))) * mapWidth;
moveIndicatorX(currentPixelX);
}