Cómo llamar a Baidu Map API en Java
1 Las interfaces disponibles son las siguientes:
Obtenga indicaciones de direcciones relevantes y sugerencias de ubicación
. /place /v2/suggestion?query=suggestion?query=suggestion?ion=Chengduamp; output=jsonamp; ak=42b8ececa9cd6fe72ae4cddd77c0da5d
2. Obtener codificación geográfica de coordenadas
/geocoder?address= Jinjiang No. 299 Lin'an Road, distrito de Jinjiang
/v2/suggestion amp;
/place/ v2/search?ak=42b8ececa9cd6fe72ae4cddd77c0da5damp; output=jsonamp; query=Azul claro coco sandamp; >{
"estado": 0,
"mensaje": "ok",
"total": 2,
" resultados": [
{
"nombre": "Blue COCO Sands",
"ubicación": {
" lat": 30.687544,
"lng": 103.996691
},
"address": "Fuera de la avenida Jinsha Xiyuan, tercera carretera de circunvalación oeste (junto a Avenida IT)",
"uid": "223992992c5ee7e0841541df"
},
{
"name": "Laguna COCO Sands Fase II",
"ubicación".{
"lat": 30.681123,
"lng": 103.991123
} ,
"address": "Junto a Jinsha IT Avenue, distrito de Qingyang",
"uid": "b7bb5abb1cd4982213293580"
}
]
}
3. Navegación de instalaciones
/place/v2/search?ak=42b8ececa9cd6fe72ae4cddd77c0da5damp; =0amp; alcance=2?.Map;
clase pública LocationUtil {
cadena final estática privada BAIDU_APP_KEY = "42b8ececa9cd6fe72ae4cddd77c0da5d";
/** p>
* Devuelve la clave de dirección de entrada lng(longitude), lat(latitud)
*/
publi
c static Maplt; getLatitude(String dirección) {
try {
// Convertir la dirección a utf-8 hexadecimal
dirección = URLEncoder.encode(dirección , "UTF-8");
// Si hay un proxy, configúrelo. Si no, puede comentarlo
// System.setProperty(" / geocoder?address= "
dirección "amp; salida=jsonamp; key=" BAIDU_APP_KEY);
BufferedReader en = nuevo BufferedReader(nuevo InputStreamReader(
resjson.openStream() ));
String res;
StringBuilder sb = new StringBuilder("");
while ((res = in. readLine) ()) != nulo) {
sb.append(res.trim());
}
in.close(); >
String str = sb.toString();
System.out.println("return json: " str);
if(str!=nullamp;amp; !str.equals( "")){
Maplt; String, Stringgt; map = null
int lngStart = str.indexOf("lng\ ":"); /p>
int lngEnd = str.indexOf(",\"lat");
int latEnd = str.indexOf("},\"lat");