В 2016 году турецкое правительство приняло решение остаться GMT + 3 часовой пояс для сохранения дневного света, но на Android:Android TimeZone Турция GMT
Calendar calendar = Calendar.getInstance();
TimeZone tz = TimeZone.getTimeZone("UTC");
calendar.setTimeInMillis(timestamp * 1000);
Date currentTimeZone = (Date) calendar.getTime();
calendar.add(Calendar.MILLISECOND, tz.getOffset(calendar.getTimeInMillis()));
Так что проблема;
он показывает GMT + 3 на дату до ноября:
Ср 26 октября 18:00:00 GMT + 03: 00 +2016
но после ноября:
Mon Nov 07 20:00:00 GMT +02: 00 2016
он должен был оставаться на GMT + 3 в течение всего года, является ли это особой проблемой для Android-разработчика TimeZone или я делаю что-то неправильно?
Спасибо,
UPDATE
Хотя я добавил чек на часовой пояс и Gmt параметры,
ситуация будет немного хаотичной для Android устройств, которые используют часовой пояс Турции, причину после 29 октября часа устройства будет на час раньше, чем обычно, пока Android не выпустит обновление для этого, и пользователь применит это.
TimeZone использует свойство устройства. Вы должны использовать непосредственно GMT + 03: 00 или +02 в вашем случае. – Vyacheslav
Это proplem для каждого современного устройства, если часовой пояс изменен в конкретной стране – Vyacheslav
Мобильные операторы могут помочь напрямую передавать часовые пояса на устройства. – Vyacheslav