Вы должны передавать и обрабатывать время в UTC и вообще не связываться с часовыми поясами.В Java это именно то, что возвращает System.currentTimeMillis()
.
Редактировать : правильный формат для передачи информации о часовом поясе - использовать идентификатор континента / города, как в базе данных tz , например, "Америка / Нью-Йорк" или "Европа / Берлин".Это также используется Java.Смещение базового часового пояса является недостаточным, поскольку оно не может вместить летнее время и исторические изменения часового пояса.