如何在Android自动完成的新场所中设置位置偏向?

时间:2019-06-28 23:03:47

标签: android google-places-api google-places

我要迁移到我的android应用程序中新的New Places SDK客户端。我试图不使用兼容性库,而是使用所有新对象。 我从SDK使用的唯一功能是内置的自动完成活动。

我设法创建了Autocomplete.IntentBuilder,并且看到它像以前的setLocationBias()一样具有PlaceAutocomplete.IntentBuilder方法。

但是,此方法将仅扩展LocationBias且没有其自身成员的接口Parcelable用作参数,因此我不确定如何实现它或如何提及该位置我需要它。

感谢您的帮助。

2 个答案:

答案 0 :(得分:4)

LocationBias采用RectangularBounds。 您需要创建两个具有东北坐标和西南坐标的边界的LatLng对象,并使用它们实例化RectangularBounds对象:

std::is_trivially_copyable

并将其传递给:

val northEast = LatLng(double, double)
val southWest = LatLng(double, double)

答案 1 :(得分:1)

因为我的声誉还不到50,所以我无法发表评论。

正如here所述,由于RectangularBounds首先采用SouthWest参数,然后采用northEast参数,所以只是想解决投票答案的问题。

所以正确的方法是

RectangularBounds.newInstance(southWest, northEast);

相反的操作会导致异常错误。