gpt4 book ai didi

java - 如何在没有双重请求的情况下使用 Google Places API 获取特定类型的 Lat Longs 列表?

转载 作者:行者123 更新时间:2023-11-29 23:30:59 25 4
gpt4 key购买 nike

这是我的代码

mGeoDataClient.getAutocompletePredictions("Supermarket", null, null).addOnSuccessListener {
it.forEach {
it.placeId?.let {
mGeoDataClient.getPlaceById(it).addOnSuccessListener {
val marker = it[0].latLng
val name = it[0].name.toString()
mMap.addMarker(MarkerOptions().position(marker).title(name))
}
}
}
}

对于它发现的每个超市,它必须再次请求以获取经纬度,因为自动完成预测中不包含此信息,只有地点 ID。

有更好的方法吗?

最佳答案

据我所知,您无法保存两次调用,但由于您要返回一个列表,您可以使用 getPlaceById(String...placeIds) 调用保存 n 次调用。

mGeoDataClient.getAutocompletePredictions("Supermarket", null, null).addOnSuccessListener {
it.map{ it.placeId}.filterNotNull().toTypedArray().let {
mGeoDataClient.getPlaceById(*it).addOnSuccessListener {
it.forEach{
val marker = it.latLng
val name = it.name.toString()
mMap.addMarker(MarkerOptions().position(marker).title(name))
}
}
}
}

关于java - 如何在没有双重请求的情况下使用 Google Places API 获取特定类型的 Lat Longs 列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52666959/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com