提问人:Cipri 提问时间:1/28/2023 最后编辑:miguevCipri 更新时间:2/3/2023 访问量:602
获取当前地址位置的最佳方式 Kotlin 2023
Best way to get current address location Kotlin 2023
问:
我想创建一个当前位置按钮来获取用户的当前地址。目前我正在使用,但它很慢,有时不起作用。fusedLocationClient.lastLocation
有没有更好和更新的方法可以在 2023 年使用 Kotlin 从用户那里获取当前地址。
有好的一天!
答:
看看简单而循序渐进的 Google 代码实验室:
https://codelabs.developers.google.com/codelabs/while-in-use-location/#1
您还可以在 GitHub 上提供的情况下使用和修改其完整模板
最后一条评论(1 月 28 日)使这个问题足够清晰,可以回答:
- lat,lng位置已经可用,这是起点。
- 目标是获得...街道地址。
- 目前,这是使用
geocoder.getFromLocation(latitute,longitude,1)
- 问题是这种方法不稳定,有时不起作用。
- 那么问题来了:我还有什么可以使用的吗?
答案是:是的,但有警告。
首先,请注意,这是由 Android 免费提供的,但不保证:geocoder.getFromLocation()
警告:地理编码服务可能无法保证可用性或准确性。结果仅供参考,不保证有意义或正确。请勿将此 API 用于任何安全关键或法规遵从性目的。
由于您关心的似乎是此服务的可靠性,因此 Google Maps Platform Geocoding API 可能会提供更好的解决方案,它确实提供了一定的延迟和可用性保证,因为它是 Google Maps Platform 核心服务之一。
此解决方案的第一个警告是,它不是完全免费的,请参阅此处地理编码 API 的计费方式,并根据您的用户群以及需要将 latlng 转换为地址的频率来考虑成本。确保限制您的 API 密钥并优化您的使用。
第二个警告,你甚至可能喜欢,是这个 API 不会只返回一个地址,它往往会返回几个地址。您可以使用 https://developers.google.com/maps/documentation/utils/geocoder 的地理编码器工具进行尝试(单击地图,它将对该点进行反向地理编码)。
评论
fusedLocationClient.currentLocation