如何在Android上离线根据当前坐标获取时区?

问题描述 投票:0回答:1

我正在尝试获取当前纬度和经度的时区,以用于时间和夏令时调整。理想情况下,我可以在没有互联网连接的情况下完成此操作。

我当前的实现使用 https://github.com/dustin-johnson/timezonemap 并在应用程序启动时在后台线程上的单例中加载时区地图,然后在用户更改时访问相同的对象保存的坐标。它创建的对象对于我正在测试的某些设备来说太大,并且应用程序崩溃了。

我还尝试加载当前位置的时区地图,并在每次位置更改时再次检索它。获取时区大约有 5 秒的延迟,这导致用户体验出现问题。

android kotlin datetime timezone timezone-offset
1个回答
0
投票

首先我会检查使用 GPS 获取坐标的必要性。如果您仍然发现需要这样做,此线程可能会很有用。

Java 和 Kotlin 也有

TimeZone.getDefault()
,它返回系统的默认时区。在这种情况下,无论用户在设备上的设置中选择什么。这对于大多数用例来说是理想的选择,并且比从 GPS 导出它要简单得多,许多设备无论如何都没有 GPS 功能。

© www.soinside.com 2019 - 2024. All rights reserved.