如何从 google 地点 api 中获取超过 20 个可能性地点 iOS
How to fetch more than 20 likelihood places from google place api for iOS
我想从 iOS 的 google 地点 api 获取超过 20 个可能性的地点。
findPlaceLikelihoodsFromCurrentLocation(withPlaceFields:callback:)
returns 恰好 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))")
}
}
})
欢迎使用 Whosebug!
在 ios SDK 中不支持获取超过 20 个结果。
解决此问题的唯一方法是切换到 web API,并使用 json 来过滤您的结果。在 JSON 响应中有一个 pagetoken
字段,您可以附加该字段并获得所有结果,但是,这需要多次 API 调用,每个调用都有自己独特的 pagetoken
来自之前的回应。
我想从 iOS 的 google 地点 api 获取超过 20 个可能性的地点。
findPlaceLikelihoodsFromCurrentLocation(withPlaceFields:callback:)
returns 恰好 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))")
}
}
})
欢迎使用 Whosebug!
在 ios SDK 中不支持获取超过 20 个结果。
解决此问题的唯一方法是切换到 web API,并使用 json 来过滤您的结果。在 JSON 响应中有一个 pagetoken
字段,您可以附加该字段并获得所有结果,但是,这需要多次 API 调用,每个调用都有自己独特的 pagetoken
来自之前的回应。