Как получить локальный часовой пояс на основе координат места?

Можно ли в cocoa коснуться локального часового пояса устройства на основе координат из gps? Я видел это в прошлом году, но ответа нет...

Все, что я действительно хочу, это количество разницы в часах с GMT, и я не хочу запрашивать веб-службу.

Или, могу ли я спросить устройство, в какой часовой пояс он установлен?

Можно ли это сделать?

Ответ 1

Используйте [NSTimeZone localTimeZone];

Изменить: Возвращаемый объект имеет метод -(NSInteger)secondsFromGMT, который вы можете использовать для определения разницы с GMT.

Ответ 2

На самом деле это невозможно, если только дата не включена во вход. Зачем? Потому что смещение изменяется со временем. Чаще всего, есть переход на летнее время в Северной Америке и летнее время в Европе. Различные места делают переключатель в разное время. Кроме того, формулы, используемые для определения того, когда менять коммутатор с течением времени. Несколько лет назад в США, например, было продлено летнее время. Затем у вас есть такие места, как Гватемала, которые иногда прорабатывают летнее время, а затем решают в следующем году этого не делать.

В нижней строке нет связи между координатами GPS и часовым поясом. Тем не менее, между координатами + датой и часовым поясом существует одна к одной. Но это движущаяся цель.