高德地图API-获取位置信息的经纬度
Posted 12程序猿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了高德地图API-获取位置信息的经纬度相关的知识,希望对你有一定的参考价值。
开发指南:https://lbs.amap.com/api/webservice/guide/api/georegeo/
一、首先需要注册成为开发者,注册成功后就可以使用此开放平台。
高德开放平台网址:https://lbs.amap.com/
点击注册:
选择注册方式,注册完成进入下一步:选择认证方式
我是个人开发,就选个人认证开发者,如果是企业就选企业认证开发者
填写完善信息,进行支付宝扫描实名认证,勾选同意,点击提交资料:
认证结果:
二、进入控制台
使用 API 前请您先注册高德账号申请Key。
1.进入控制台
https://console.amap.com/dev/key/app
2.在应用管理创建应用
创建好的应用:
3.为上面的应用添加key
生成的key:
注:此key值是以后,请求api所用的key,一定要保存好
服务示例:
https://restapi.amap.com/v3/geocode/geo?address=北京市朝阳区阜通东大街6号&output=XML&key=<用户的key>
请求示例:
示例说明:address 是需要获取坐标的结构化地址,output(XML)用于指定返回数据的格式
,Key是用户请求数据的身份标识。
localtion中逗号前面为经度,后面为纬度
由此api,把地址转为经纬度。
三、Java调用高德地图API根据详细地址获取经纬度
代码如下:
package com.example.listdemo.utils;
import com.alibaba.fastjson.JSONObject;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
/**
* 地址转经纬度(使用高德地图获取地址信息的经纬度)
* @author qzz
*/
public class AddressLocationUtil
/**
* Key
*/
private static String KEY="<高德key>";
public static String GD_URL="https://restapi.amap.com/v3/geocode/geo?address=%s&key=%s";
/**
* 成功标识
*/
private static String SUCCESS_FLAG="1";
/**
* 根据地址获取对应的经纬度信息
* @param address
* @return
*/
public static String getLonAndLatByAddress(String address)
String location="";
GD_URL = String.format(GD_URL, address, KEY);
//高德接口返回的是JSON格式的字符串
String queryResult = getResponse(GD_URL);
JSONObject obj = JSONObject.parseObject(queryResult);
if(String.valueOf(obj.get("status")).equals(SUCCESS_FLAG))
JSONObject jobJSON = JSONObject.parseObject(obj.get("geocodes").toString().substring(1, obj.get("geocodes").toString().length() - 1));
location = String.valueOf(jobJSON.get("location"));
else
throw new RuntimeException("地址转换经纬度失败,错误码:" + obj.get("infocode"));
return location;
/**
* 发送请求
*
* @param serverUrl 请求地址
*/
private static String getResponse(String serverUrl)
// 用JAVA发起http请求,并返回json格式的结果
StringBuffer result = new StringBuffer();
try
URL url = new URL(serverUrl);
URLConnection conn = url.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
while ((line = in.readLine()) != null)
result.append(line);
in.close();
catch (Exception e)
e.printStackTrace();
return result.toString();
public static void main(String[] args)
String address="北京市朝阳区阜通东大街6号";
String location=getLonAndLatByAddress(address);
System.out.println("经纬度:" + location);
执行结果:
uniapp高德经纬度限制个球?
参考技术A 1、打开高德地图官网,对着你想要查看经纬度的地点右键,再点击这是哪儿。2、点击更多,再点击分享。
3、复制并打开分享出来的地址。
4、查看地址栏,前一部分的数字就是经度数据,后一部分则是纬度。
以上是关于高德地图API-获取位置信息的经纬度的主要内容,如果未能解决你的问题,请参考以下文章