2012-04-22 3 views
0

Независимо от того, как я изменяю часовой пояс события в Календаре Google, всегда существует строка -04: 00, которая отстает от атрибута DateTime Start и End при использовании с помощью API календаря Google на Android. Что я делаю, так это создание события из Интернета и просмотр результатов на эмуляторе Android.Что означает «-04: 00» в событии Календаря Google.

Например:
Если я создаю событие время которого зона находится в Торонто, Канада (FYI, что часовой пояс Календаря), он будет показывать

"dateTime" : "2012-04-25T10:00:00.000-04:00", 

Если изменить его в Тайбэе, Тайвань, он будет показывать

"dateTime" : "2012-04-24T22:00:00.000-04:00", 

часы автоматически изменяются, который отлично подходит для реализации, но что, что «-04: 00» стоять? (FYI, часовой пояс Торонто «GMT-05: 00»)

ответ

1

Это смещение UTC, в котором указывается, в каком часовом поясе время события выражается. Вероятно, это происходит из настройки часового пояса календаря. Торонто в настоящее время находится в UTC-4:00, что означает, что это за четыре часа позади часов UTC. Поэтому, когда вы перенесли событие в Тайбэй, вы сохранили его в то же самое местное время (10 часов 25-го), но API выражает его в часы Торонто; то есть событие произойдет, когда на 24-м в Торонто состоится 10 часов вечера.

Часовой пояс Торонто GMT-5: 00 (UTC и GMT примерно эквивалентны), поскольку без летнего времени это смещение. API знает, что Toronto в настоящее время использует экономию дневного света, и соответственно изменяет смещение.

Следует также отметить, что этот формат даты/времени составляет ISO 8601 и является обычным способом представления времени в API.

+0

Отличный ответ! Я просто переехал с Тайваня, и я не знал последствий летнего света! Кроме того, спасибо за ИСО, я просматривал RFC-2445 и не мог ничего окупить! –

Смежные вопросы