1. 程式人生 > >騰訊地圖逆地址解析,通過經緯度獲取詳細的資訊資料

騰訊地圖逆地址解析,通過經緯度獲取詳細的資訊資料

根據騰訊地圖API,以圖文的方式一步一步的來說明如何獲取詳細的位置資訊資料。具體參考騰訊地圖Webservice API的簡介。騰訊地圖WebService API

  第一步:申請開發者金鑰(key)申請金鑰

      我選擇的應用型別為瀏覽器型別(呼叫Javascript API、JSONP呼叫WebService API、靜態圖API等)。

      填寫完成提交好既可以獲取屬於自己的Key。

      

  第二步:Key獲取到了,下面就要通過ajax請求獲取位置資訊了

      首先跟大家說一下此介面都可以獲取那些資訊,以及需要傳哪些引數。簡單來說就是輸入座標返回地理位置資訊和附近poi列表(POI是“Point of Interest”的縮寫,可以翻譯成“資訊點”,每個POI包含四方面資訊,名稱、類別、經度緯度、附近的酒店飯店商鋪等資訊)。

      

public GetAddressResponeInfo getLocation(String lng, String lat) {
		GetAddressResponeInfo result = null;
		// 引數解釋:lng:經度,lat:維度。KEY:騰訊地圖key,get_poi:返回狀態。1返回,0不返回
		String urlString = GETADDRESS_URL + lat + "," + lng + "&key=" + developerKey + "&get_poi=0";
		String responseStr = "";
		HttpURLConnection conn = null;
		try {
			URL url = new URL(urlString);
			conn = (HttpURLConnection) url.openConnection();
			conn.setDoOutput(true);
			// 騰訊地圖使用GET
			conn.setRequestMethod("GET");
			BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8"));
			String line;
			// 獲取地址解析結果
			while ((line = in.readLine()) != null) {
				responseStr += line + "\n";
			}
			in.close();
		} catch (Exception e) {
			logger.error("呼叫騰訊地圖介面獲取位置出錯", e);
		} finally {
			if (conn != null) {
				conn.disconnect();
			}
		}
		logger.debug("呼叫騰訊地圖介面 返回responseStr為" + responseStr);

		if (!StringUtils.isEmpty(responseStr)) {
			result = JSON.parseObject(responseStr, GetAddressResponeInfo.class);
		}
		return result;
	}