2015-04-22 113 views
0

我目前正在执行一个Android应用程序,该应用程序返回距离用户位置最近的位置,以符合其指定的偏好(披萨,咖啡,酒吧等)。为此,我在Google Places API中使用Nearby Search Requests。这是我建立我的HTTP请求:Google Places API返回指定关键字的零结果

public String createRequestURL() { 
    String requestURL = ""; 

    if ((googleApiKey != "") && (lat <= MAX_GOOGLE_LAT) && (lat >= MIN_GOOGLE_LAT) 
      && (lng <= MAX_GOOGLE_LNG) && (lng >= MIN_GOOGLE_LNG)) { 
     requestURL += "https://maps.googleapis.com/maps/api/place/nearbysearch/json?"; 
     requestURL += "location=" + lat + "," + lng; 
     requestURL += "&rankby=distance"; 
     requestURL += "&keyword=" + keyword; 
     requestURL += "&opennow"; 
     requestURL += "&key=" + googleApiKey; 
    } 

    return requestURL; 
} 

测试查询我试图执行与LAT = 45.5017,经度= 73.5673,关键字=“比萨饼”,这是找到所有披萨店是开现在靠近蒙特利尔

当我执行该查询API时,我一直得到ZERO_RESULTS状态。我以前使用的是radius字段,但从此读取question and answer on stackoverflow,似乎在查询中使用了rankby,然后删除了在我的应用中超过X米的所有查询响应,这对于我希望我的应用执行的操作来说更好。

为什么我会回到ZERO_RESULTS状态而不是实际的披萨,咖啡,酒吧等位置附近?


编辑:

我曾尝试以下要求以及:

public String createRequestURL() { 
    String requestURL = ""; 

    if ((googleApiKey != "") && (lat <= MAX_GOOGLE_LAT) && (lat >= MIN_GOOGLE_LAT) 
      && (lng <= MAX_GOOGLE_LNG) && (lng >= MIN_GOOGLE_LNG)) { 
     requestURL += "https://maps.googleapis.com/maps/api/place/nearbysearch/json?"; 
     requestURL += "location=" + lat + "," + lng; 
     requestURL += "&rankby=distance"; 
     requestURL += "&types=food"; 
     requestURL += "&key=" + googleApiKey; 
    } 

    return requestURL; 
} 

而这个简单的要求仍是恢复状态ZERO_RESULTS

+0

你有没有试过去除'opennow'和'keyword'等参数,并给出一个你知道附近有什么东西的位置?我认为这可能是一个很好的第一步,以确保最基本的查询一切正常。 – AlvaroSantisteban

+0

@AlvaroSantisteban我已经尝试删除'opennow',并且从API返回相同的'ZERO_RESULTS'状态。不幸的是,当使用'rankby ='字段时,不能删除所需的关键字(即“type”或“name”)。 – Choub890

+2

如果你不迷蒙。你可能想说蒙特利尔的lng = -73.5673 – Emma

回答

2

更改蒙特利尔lng = -73.5673。

相关问题