1. Cell ID 转 经纬度
这个API的主页我不知道在哪,只知道使用方法:
url是http://www.google.com/loc/json
然后构建一个json对象,把经纬度等信息放进去,post到服务器就行了。
示例代码用的是json-simple这个包。
JSONObject json = new JSONObject();
json.put("version", "1.1.0");
json.put("host", "maps.google.com");
json.put("request_address", true);
json.put("address_language", "zh_CN");
JSONArray cells = new JSONArray();
json.put("cell_towers", cells);
JSONObject cell = new JSONObject();
cell.put("mobile_country_code", mcc);
cell.put("mobile_network_code", mnc);
cell.put("location_area_code", lac);
cell.put("cell_id", cellid);
//下面这块我也不太清楚用途
cell.put("age", 0);
cell.put("signal_strength", -60);
cell.put("timing_advance", 5555);
cells.add(cell);
从返回数据中读取latitude和longitude参数就行了。
2. 经纬度转详细地址
该API的地址是:https://developers.google.com/maps/documentation/geocoding/
这个的访问方法比较简单,按照http://maps.googleapis.com/maps/api/geocode/json?laglng=xx,yy&sensor=true/false的格式就可以了。
返回的json格式比较复杂,按照页面文档仔细写json解析吧。
另外,这个api还可以做反向的地址到经纬度的转换等。
3. POI (point of interest) API
地址:https://developers.google.com/maps/documentation/places/
这个API的使用是需要API key的,申请很简单,页面有介绍。
为了得到poi信息,访问链接必须填的参数有经纬度,半径,api key,sensor,选填的有poi类型等等。
支持的poi类型很多,在北京使用的话,返回的结果还是挺多的。
还可以获取一个poi地点的详细信息,主要需要的是该poi地点的reference信息。
需要说明的是,这些api都有每天的访问次数限制,大多数是1000次吧。