获取Apple时钟应用程序中使用的城市/时区列表



我目前正在开发一款软件,该软件允许用户根据城市将时间简单转换为不同的时区,因此用户可以选择一个城市名称,然后选择他们希望转换为所选其他时区的时间。我当前使用的是NSTimeZone数据库中的时区,我循环遍历该数据库,然后使用方法knownTimeZoneNames创建一个NSTimeZone对象。我的问题是,NSTimeZone提供给我的这个数据库似乎与苹果在其时钟应用程序中使用的数据库不同。当我循环使用knownTimeZoneNames时,我无法通过苹果内置的应用程序访问多个城市。

我已经查看了IANA创建的tz或zoneinfo数据库,但这个数据库似乎也缺少我在Clock应用程序中可以看到的一些地方。瑞士日内瓦就是一个例子。

有人知道这个数据库可能来自哪里吗?或者它可能是另一个包含其他城市和时区的数据库,然后与NSTimeZone中的现有数据库匹配?

另一件我不确定的事情是国家数据库来自哪里。在NSTimeZone数据库中,你只会得到地区(亚洲、欧洲、美国等)和城市名称,但例如许多非洲城市,最好有城市名称和国家名称-这是从哪里来的?

谢谢。

获取城市/时区数据的一种简单方法是破解名为世界时钟(适用于OS X)的小工具,该小工具由Apple,股份有限公司开发。导航到大型文件夹,然后导航到小工具。右键单击"世界时钟"并使用文本编辑器打开名为WorldClock.js的文件。此文件包含城市名称行及其相应的时区名称。这就是我的时钟应用程序所使用的。

您应该检查:谷歌时区API。由于它似乎需要lat,lng,您应该首先使用谷歌地理编码API,以便将城市名称转换为坐标。

相关内容

  • 没有找到相关文章