gpt4 book ai didi

java - 如何使用 Geocoder 获取当前位置的邮政编码

转载 作者:行者123 更新时间:2023-11-29 03:45:14 28 4
gpt4 key购买 nike

我正在尝试获取用户当前位置的邮政编码。我在 MyActivity 中有一个 teditText,它应该根据我从该 Activity 中获得的邮政编码进行填充。

public class LocationActivity extends MyActivity {
double LATITUDE;
double LONGITUDE;

Geocoder geocoder = new Geocoder(this, Locale.ENGLISH);
{
try {
List<Address> addresses = geocoder.getFromLocation(LATITUDE, LONGITUDE, 1);

if(addresses != null) {
Address returnedZip = addresses.get(0);
StringBuilder currentZip = new StringBuilder("Address:\n");
for(int i=0; i<returnedZip.getMaxAddressLineIndex(); i++) {
strcurrentZip.append(returnedZip.getPostalCode());
}
m_zip.setText(strcurrentZip.toString());
}
else {
m_zip.setText("No zip returned!");
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
m_zip.setText("zip not found!");
}
}
}

我没有收到任何响应,应用程序 logcat 没有显示任何错误,但我要填充的 editText 字段仍然为空。

最佳答案

这里...

XPath xpath = XPathFactory.newInstance().newXPath();
String expression = "//GeocodeResponse/result/address_component[type=\"postal_code\"]/long_name/text()";
InputSource inputSource = new InputSource("https://maps.googleapis.com/maps/api/geocode/xml?latlng="+VARIABLECONTAININGLATITUDE+","+VARIABLECONTAININGLONGITUDE+"&sensor=true");
String zipcode = (String) xpath.evaluate(expression, inputSource, XPathConstants.STRING);

其中 VARIABLECONTAININGLATITUDE 和 VARIABLECONTAININGLONGITUDE 是来自 GPS 或您选择的任何位置提供商的纬度和经度。

您还需要 list 中的互联网权限和 list 中的位置权限

关于java - 如何使用 Geocoder 获取当前位置的邮政编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11270229/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com