0

我开发了一个应用程序,它与 google places api 交互以搜索用户附近的咖啡馆。出于我的应用程序的目的,我希望将半径设置为一个非常小的值.. 可能是 20 到 50 米。目前我的应用程序正在运行,但它没有按应有的方式运行。在我的应用程序中,我将半径设置为 350 米。所以实际上它应该给我返回半径为 350m 的咖啡馆列表。但是,即使星巴克距离为 650m(道路距离)和 500m(直线距离),我的应用程序仍会在此结果集中显示星巴克。我想知道应该怎么做才能得到正确的结果。目前我正在为此使用 GPS。gps 和网络服务的结合会为我提供更好的阅读体验吗?

public PlacesList search(double latitude, double longitude, double radius, String types)
throws Exception {

    this._latitude = latitude;
    this._longitude = longitude;
    this._radius = radius;
4

1 回答 1

1

这个问题与 Android 无关,但与 Google Places API 有关。

您使用的是地点搜索还是文本搜索?他们都对位置偏差发表了评论

文字搜索:

“您可以通过传递位置和半径参数将结果偏向指定的圆。这将指示 Place 服务更喜欢在该圆内显示结果;仍可能显示定义区域之外的结果。”

地方搜索:

“距离。此选项按距离指定位置的距离升序排列结果。按距离排列结果将设置固定搜索半径50km。关键字、名称或类型中的一个或多个为必填项。”

于 2013-02-11T20:23:06.570 回答