繁体   English   中英

Google Maps Geolocation API仅返回我阵列中第一座塔的位置

[英]Google Maps Geolocation API only ever returning location of 1st tower in my array

我正在尝试使用Google Maps Geolocation API。 我正在将包含单元格塔的JSON文件发布到https://www.googleapis.com/geolocation/v1/geolocate?key=MYKEY

示例JSON:

{
    "cellTowers":[
    {
        "cellId":65535,
        "locationAreaCode":5160,
        "mobileCountryCode":234,
        "mobileNetworkCode":10,
        "signalStrength":-53
    },
    {
        "cellId":34177,
        "locationAreaCode":5160,
        "mobileCountryCode":234,
        "mobileNetworkCode":10,
        "signalStrength":-55
    }
]}

这已经过验证,正确的JSON。 然而,我遇到了从API获取正常数据的问题。

我使用Apache HTTPClient和HTTPPost库在Java中实现了POST。 我得到了有效的回复,但它始终是cellTowers数组中第一个单元塔的LAT,LNG。 好像API正在读取第一个蜂窝塔,获取位置然后忽略其余的。 当然,我已经通过对列表进行反转和混洗来验证这是行为,每次响应都会改变到第一个塔位置。 这是我的代码:

HttpParams httpParams = new BasicHttpParams();
ConnRouteParams.setDefaultProxy(httpParams, new HttpHost(PROXY_HOST, PROXY_PORT));
HttpConnectionParams.setConnectionTimeout(httpParams, TIMEOUT_MILLISEC);
HttpConnectionParams.setSoTimeout(httpParams, TIMEOUT_MILLISEC);

HttpClient client = new DefaultHttpClient(httpParams);
HttpPost request = new HttpPost(GOOGLE_GEOLOCATION_API);
request.setHeader("Content-type", "application/json");

try {
    StringEntity se = new StringEntity(json);
    request.setEntity(se);

    HttpResponse response = client.execute(request);
    if(response!=null){
        String jsonResult = EntityUtils.toString(response.getEntity());
        GeolocationResponse geolocationResponse = gson.fromJson(jsonResult, GeolocationResponse.class);

        logger.info(jsonResult);
        logger.info("Est. Location: " + geolocationResponse.toString());
    }
} catch (Exception e) {
    e.printStackTrace();
}

Geolocation API一次只支持一个单元塔吗? 我认为它比这更聪明,在所有塔上使用某种信号传播和距离估计。

在最近与Google就我们的地图API订阅进行的沟通中,我询问了有关Geo-location API的一些一般信息。 事实证明它不会对细胞塔信号进行任何复杂的三角测量。

他们只使用第一个被认为有效的。 参考: http//code.google.com/p/gmaps-api-issues/issues/detail?id = 6929

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM