0

我正在尝试使用 Geocoder 获取实际用户国家/地区。问题是有时它会以英语返回国家名称,而有时则以西班牙语返回。我在同一位置使用相同的物理设备。

如何定义地理编码器返回的国家名称?

我正在使用这个功能:

  private static String getPais(double LATITUDE, double LONGITUDE,Context context) {
        String strAdd = "";
        String pais = "";
        Geocoder geocoder = new Geocoder(context, Locale.getDefault());
        try {
            List<Address> addresses = geocoder.getFromLocation(LATITUDE, LONGITUDE, 1);
            if (addresses != null) {
                Address returnedAddress = addresses.get(0);
                StringBuilder strReturnedAddress = new StringBuilder("");

                for (int i = 0; i <= returnedAddress.getMaxAddressLineIndex(); i++) {
                    strReturnedAddress.append(returnedAddress.getAddressLine(i)).append("\n");
                }
                strAdd = strReturnedAddress.toString();
                //    provincia = returnedAddress.getAddressLine(2);
                pais = addresses.get(0).getCountryName();
                Log.w("My Current ion address", strReturnedAddress.toString());
            } else {
                Log.w("My Current tion address", "No Address returned!");
            }
        } catch (Exception e) {
            e.printStackTrace();
            Log.w("My Current loon address", "Canont get Address!");
        }
        //return strAdd;
        return pais;
   }
4

0 回答 0