String geodata = OkHttpUtils.builder().url("https://restapi.amap.com/v3/geocode/geo")
// 有参数的话添加参数,可多个
.addParam("key", GAODE_KEY)
.addParam("address", name) //name为一个具体地址如重庆解放碑
.addHeader("Content-Type", "application/json; charset=utf-8")
.get()
.sync();
HashMap map = JSON.parseObject(geodata, HashMap.class);
JSONArray geocodes = (JSONArray) map.get("geocodes");
for (Object geocode : geocodes) {
JSONObject geocode1 = (JSONObject) geocode;
String location = String.valueOf(geocode1.get("location"));
String[] split = location.split(",");//split[0],split[1]分别为经纬度
}
采用字符串分割的方式进行简单测试发现能够较为精准的获得地理位置。
下图为测试代码,代码执行后会输出经度与纬度,如果需要经度,纬度的格式可以直