Сложность отображения текущего местоположения (долготы и широты) пользователя на картах Google. - PullRequest
0 голосов
/ 26 октября 2011

Я написал код, используя этот учебник http://marakana.com/forums/android/examples/311.html Он работает нормально, за исключением части прорисовки. Он показывает долготу и широту, но не показывает их на карте Google. Может кто-нибудь сказать мне ошибку в этом коде, которая непозволяет наносить координаты на карту.Вот мой код:

http://pastebin.com/QbvfQzvG

Ответы [ 2 ]

0 голосов
/ 26 октября 2011
    try 
    {
     List<Address> addresses = geocoder.getFromLocation(location.getLatitude(), location.getLongitude(), 10); //<10>
     for (Address address : addresses) {
          this.locationText.append("\n" + address.getAddressLine(0));
    }

   .... 

  } catch (IOException e) {
    Log.e("LocateMe", "Could not get Geocoder data", e);
  }

Поскольку выдается исключение, было вызвано «Не удалось получить данные геокодера»,

  • Это может быть связано с отсутствием разрешения ИНТЕРНЕТ
  • Ошибка в API эмулятора 2.2: http://code.google.com/p/android/issues/detail?id=8816

    java.io.IOException: служба недоступна на android.location.Geocoder.getFromLocation (Geocoder.java:117)

  • addresses может быть null, поэтому выбрасывается NPE
0 голосов
/ 26 октября 2011

Попробуйте использовать MapController.setCenter () вместо animateTo ()

pointToShow= new GeoPoint(iLat,iLong);
MapController control=mapView.getController();
control.setCenter(pointToShow);

Это прекрасно работает для меня ...

...