有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

安卓我可以在我的ActivityMaps中实现反向地理编码功能。java文件?

我目前正在Android Studio 1.1.0中开发一个应用程序,我已经实现了Google Maps API,从中我可以检索用户当前位置,但我想将其转换为地址。我可以在MapsActivity中使用以下代码吗。java文件

function getReverseGeocodingData(lat, lng) {

   var latlng = new google.maps.LatLng(lat, lng);
   // This is making the Geocode request
   var geocoder = new google.maps.Geocoder();
   geocoder.geocode({ 'latLng': latlng }, function (results, status) {
      if (status !== google.maps.GeocoderStatus.OK) {
        alert(status);
        }

    // This is checking to see if the Geoeode Status is OK before proceeding
        if (status == google.maps.GeocoderStatus.OK) {
        console.log(results);

        var address = (results[0].formatted_address);
    }
});

}

任何帮助都将不胜感激。对Android Studio来说还是比较新的


共 (1) 个答案

  1. # 1 楼答案

    您可以使用android轻松实现这一点。地方地理编码器

     // get current locality based on lat lng
        Geocoder geocoder;
        List<Address> addresses;
        geocoder = new Geocoder(this, Locale.getDefault());
        addresses = geocoder.getFromLocation(latitude, longitude, 1); // Here 1 represent max location result to returned, by documents it recommended 1 to 5
    
        String address = addresses.get(0).getAddressLine(0); // If any additional address line present than only, check with max available address lines by getMaxAddressLineIndex()
        String city = addresses.get(0).getLocality();
        String state = addresses.get(0).getAdminArea();
        String country = addresses.get(0).getCountryName();
        String postalCode = addresses.get(0).getPostalCode();
        String knownName = addresses.get(0).getFeatureName();
    

    为了获得良好的实践,请确保在异步任务中执行此操作