Наверно продукты Касперского любили бы больше, если бы в их информационных сообщениях было меньше пиара, а больше полезной информации. Я прошёл по всем их ссылкам по этой теме, но найти инфы о том, что же это за приложение (кто издатель, версии, точное название) так и не смог. Подобных приложений на маркете с десяток. Так и чешутся руки поставить их антивирус и «решить все проблемы».
Проекты разные бывают, для нашего этот алгоритм идеально подошёл. У нас — мессенджер мгновенных сообщений. Изложенный алгоритм не претендует на академизм и хорош именно своей простотой и понятностью. Мне вообще очень нравятся простые решения — «в одну строчку».
Именно про пункты 1 и 2 (для не верно установленного времени) речь и идёт. То есть в моём алгоритме часовые пояса или зоны, как таковые не имеют значение. У нас это решение используется в мессенджере мгновенных сообщений.
Что-то у меня не получается сходу, то что Вы советуете. (про UTC на сервере и Date.UMC)
Приведите пожалуйста конкретный пример. Как получать время на сервере? И как выводить в браузер?
На вскидку:
Date.UTC(d.getFullYear(), d.getMonth(), d.getDate(), d.getHours(), d.getMinutes(), d.getSeconds()) != d.getTime();
Сам удивился, что не смог функцию попроще найти в javascript. Может плохо искал. Но именно вышеприведённое выражение (полученное чуть ли не методом тыка) правильно работает.
Например такое может быть. На Вашем устройстве отключена сихронизация времени (это часто используется). Вы отправили сообщение в чат в Москве, но часовой пояс на Вашем устройстве стоял для Вьетнама. Потом улетели в США. Опять поменяли время на местное, но часовой пояс опять неверный на устройстве остался. Какое время для отправленого сообщения Вы увидите?
1. Идеологически хранить часовой пояс очень часто не нужно. И никаких костылей тут я не вижу.
2. Вроде именно этот вариант тоже приведён (функция mydate).
Будет управление сценариямм Mi Home?
Приведите пожалуйста конкретный пример. Как получать время на сервере? И как выводить в браузер?
Date.UTC(d.getFullYear(), d.getMonth(), d.getDate(), d.getHours(), d.getMinutes(), d.getSeconds()) != d.getTime();
Сам удивился, что не смог функцию попроще найти в javascript. Может плохо искал. Но именно вышеприведённое выражение (полученное чуть ли не методом тыка) правильно работает.
2. Вроде именно этот вариант тоже приведён (функция mydate).