我想从iOS的Google Place API获取20个以上的可能地点。
findPlaceLikelihoodsFromCurrentLocation(withPlaceFields:callback:)
恰好返回附近的20个地方。
我无法指定要提取的地点和类型。
javaScript api似乎能够指定半径并获取60个位置。
Q1)有什么方法可以获取20个以上的可能性地点?
Q2)有什么方法可以获取某些类型的地方(例如,仅获取附近的20家超市)
let fields: GMSPlaceField = GMSPlaceField(rawValue: UInt(GMSPlaceField.name.rawValue) |
UInt(GMSPlaceField.placeID.rawValue))!
placesClient?.findPlaceLikelihoodsFromCurrentLocation(withPlaceFields: fields, callback: {
(placeLikelihoodList: Array<GMSPlaceLikelihood>?, error: Error?) in
if let error = error {
print("An error occurred: \(error.localizedDescription)")
return
}
if let placeLikelihoodList = placeLikelihoodList {
for likelihood in placeLikelihoodList {
let place = likelihood.place
print("Current Place name \(String(describing: place.name)) at likelihood \(likelihood.likelihood)")
print("Current PlaceID \(String(describing: place.placeID))")
}
}
})
答案 0 :(得分:1)
欢迎来到Stackoverflow!
在iOS SDK中不支持获取20个以上的结果。
唯一的解决方法是切换到web API,并使用json过滤结果。在JSON响应中,有一个pagetoken
字段可以附加并获取所有结果,但是,这需要多个API调用,每个API调用都具有上一个响应中唯一的pagetoken
。