迁移到Places 4.0 SDK,如何迁移place Bias?

Migrating to Places 4.0 SDK, how to migrate place Bias?

我正在迁移到新地方 SDK 4.0

旧函数是:

findAutocompletePredictions(fromQuery: query,
                            bounds: bounds,
                            boundsMode: .bias,
                            filter: filter,
                            sessionToken: token) { (prediction, error) in
                                        callback(prediction, error)
}

根据文档的新功能是

findAutocompletePredictions(fromQuery: query,
                            filter: filter,
                            sessionToken: token) { (prediction, error) in
                                        callback(prediction, error)
}

我看到现在在 GMSAutocompleteFilter 过滤器

上设置了边界偏差

这有一个 locationBias 属性 ,我设置了 some 并且它采用 <GMSPlaceLocationBias>

的参数

我遇到的问题是没有关于在此处提供什么的信息...GMSPlaceLocationBias 是一个协议,我不知道我使用对象明智地提供旧边界数据是什么意思。

遵守协议给了我一个 locationBiasURLQueryItem 填充的乐趣,没有关于此函数中应该包含什么的进一步文档

所以我卡住了,无法升级,因为似乎没有明确的前进方向。

有人有什么想法吗?文档在这里:https://developers.google.com/places/ios-sdk/reference/interface_g_m_s_places_client#ab60773feec0e68751c5a7f1066b9d252)

我构建过滤器的尝试是:

    let filter = GMSAutocompleteFilter()
    if case .location(let location) = _locationController.locationStatus {
        filter.locationBias = .some(location)
    }

但显然我的自定义位置模型对象未确认 GMSPlaceLocationBias 并且是一个结构,因此无法使用并且出现错误

我也完全迷失了这一点,但刚刚在其中一个指南中找到了一个例子 here

简而言之,实现如下所示:

let filter = GMSAutocompleteFilter()
filter.locationBias = GMSPlaceRectangularLocationOption(bounds.northEast, bounds.southWest)

这里我使用了我之前在 3.x 中使用的相同边界(在我的例子中来自当前显示的地图)来获取那些东北和西南坐标,但你可以生成你自己的基于关于您如何尝试使结果产生偏差。

我希望他们刚刚在他们的文档中做出任何指示,表明这是这样做的预期方式。