Android 如何定义Geocoder返回语言?
我正在用地理编码器获取实际的用户国家。问题是,有时它返回英文国家名称,有时返回西班牙文国家名称。我在同一位置使用同一个物理设备 如何定义地理编码器返回的国家名称 我正在使用这个功能:Android 如何定义Geocoder返回语言?,android,geocoder,Android,Geocoder,我正在用地理编码器获取实际的用户国家。问题是,有时它返回英文国家名称,有时返回西班牙文国家名称。我在同一位置使用同一个物理设备 如何定义地理编码器返回的国家名称 我正在使用这个功能: private static String getPais(double LATITUDE, double LONGITUDE,Context context) { String strAdd = ""; String pais = ""; Geocoder ge
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;
}
私有静态字符串getPais(双纬度、双经度、上下文){
字符串strAdd=“”;
字符串pais=“”;
Geocoder Geocoder=新的地理编码器(上下文,Locale.getDefault());
试一试{
列表地址=geocoder.getFromLocation(纬度,经度,1);
如果(地址!=null){
返回的地址地址=地址。获取(0);
StringBuilder strReturnedAddress=新StringBuilder(“”);
对于(int i=0;i Hi agani…我有一个解决方案,探索一下:``Geocoder Geocoder=new Geocoder(context,Locale.forLanguageTag(“EN”);``当您声明Geocoder(在标记中使用您想要的语言)时,请使用您找到的解决方案添加一个新答案并接受它。