/ / Як зробити так, щоб подія спрацьовувала одночасно на всіх пристроях, незалежно від часового поясу - Java, Android, календар, часовий пояс

Як зробити тригер заходу одночасно на всіх пристроях, незалежно від часового поясу - java, android, календар, часовий пояс

Якщо моя програма ініціює подію о 21:00 за східним стандартним часом, вона також повинна ініціювати цю подію о 18:00 за тихоокеанським стандартним часом.

На даний момент я аналізую канал, і в ньому вказано, що подія триватиме о 9 вечора за східним часом. Не змінюючи стрічку, який найкращий спосіб зробити мій код універсальним для тих, хто відкриває програму в будь-якому часовому поясі.

Відповіді:

2 для відповіді № 1

ви завжди зберігати дати як час UTC (з часовим поясом, що зберігається окремо). Тоді всі пристрої сигналізації можуть легко перетворити це у свій власний місцевий час і подати сигнал тривоги у відповідний час.

Будильники, які повинні бути о 9 ранку, незалежно від того, який часовий пояс тоді зберігається без часового поясу.


2 для відповіді № 2

Ви можете отримати поточний часовий пояс пристрою приблизно так:

TimeZone.getDefault()

.... а потім перетворіть поточний час роботи пристрою та час подачі в GMT.

Тепер ви повинні перевірити, чи рівні вони.


0 для відповіді № 3

використовуйте TimeToNow, використовуючи prettytime http://www.ocpsoft.org/prettytime/

це дасть вам результат як 4 години тому чи мить тому, який видалить фактори часового поясу