从android中的地址获取经度和经度

moh*_*aza 11 android geocoding android-maps android-maps-v2

我试图从地址获得纬度和经度,问题是...当我只提供城市名称而不是给我正确的纬度和经度,当我给出完整的地址(如州,城市名称,街道号)比它不给我正确的纬度和经度......

谢谢你的合作回应......

我的代码是......

//String addressStr = "faisalabad";/// this give me correct address
        String addressStr = "Sainta Augustine,FL,4405 Avenue A";
          Geocoder geoCoder = new Geocoder(MapClass.this, Locale.getDefault());

          try {
              List<Address> addresses =
          geoCoder.getFromLocationName(addressStr, 1); 
              if (addresses.size() >  0) {
                 latitude = addresses.get(0).getLatitude(); longtitude =
          addresses.get(0).getLongitude(); }

          } catch (IOException e) { // TODO Auto-generated catch block
          e.printStackTrace(); }


        pos = new LatLng(latitude, longtitude);
        googleMap.addMarker(new MarkerOptions().icon(
                BitmapDescriptorFactory
                        .defaultMarker(BitmapDescriptorFactory.HUE_RED))
                .position(pos));
        googleMap.animateCamera(CameraUpdateFactory.newLatLngZoom(pos, 15));
        googleMap.animateCamera(CameraUpdateFactory.zoomTo(10), 2000, null);
Run Code Online (Sandbox Code Playgroud)

moh*_*aza 6

我不喜欢...... :)

只有序列不正确......

首先给出街道地址而不是城市名称和州...它从地址给我正确的纬度和经度.. :)

并改变

Geocoder geoCoder = new Geocoder(MapClass.this, Locale.getDefault());
Run Code Online (Sandbox Code Playgroud)

Geocoder geoCoder = new Geocoder(MapClass.this);
Run Code Online (Sandbox Code Playgroud)

谢谢你们所有人的时间......