Смартфон неправильно показывает время. Устанавливаем самое точное время и точную дату. Видео: Как настроить дату и время на смартфоне

12 августа 2014 в 17:07

Проблемы времени и часовых поясов в Android и пути их решения

  • Системное администрирование
  • Tutorial

Предположим, вы уже давно используете Android, а потому может показаться, что он прекрасно справляется с задачами синхронизации времени – будильники срабатывают вовремя, каких-то явных отклонений времени не наблюдается и т. д. Однако уверены ли вы полностью в том, откуда Android на самом деле получает данные о точном времени и часовых поясах? Если у вас есть хоть какие-то сомнения о том, как это работает - добро пожаловать под кат.


В Android существует две проблемы со временем: это его непредсказуемая синхронизация и необходимость в актуализации данных о часовых поясах даже в самой свежей версии ОС.

Предыстория: Android является мобильной ОС, базирующейся на ядре Linux, он спокойно подключается к интернету и, конечно же, можно предположить, что синхронизация времени осуществляется с помощью NTP , однако, это не так. Исторически сложилось, что Android был предназначен для использования исключительно в мобильных телефонах (вспомните версию 1.6). При этом только к 3 мажорной версии он обзавёлся интерфейсом для планшетов и начали́сь другие подвижки к унификации интерфейса и начинки ОС. Однако даже версии 4.4 и Android L получают сигналы точного времени теми же методами, что их получала Nokia 3310 и другие, более ранние GSM/3GPP телефоны, т. е. от вышек сотовой связи при регистрации в сети (при подключении к вышке). При этом планшеты или другие устройства без модуля связи, в принципе не имеют возможности синхронизировать время автоматически.

К великому сожалению, чтобы научить Android синхронизировать время полностью автоматически с помощью NTP нам понадобиться root доступ ибо API для точной установки времени в Android ныне отсутствует.

Приступим. Первое, что необходимо сделать, это выключить синхронизацию времени с мобильной сетью. При этом установку часового пояса я рекомендую оставить в автоматическом режиме, а отключать её стоит, только если есть гарантия, что устройство будет работать в стационарном режиме.

Скриншот окна настроек «Настройки -> Дата и время» версии Android 4.x:

Далее, необходимо установить приложение ClockSync , которое и будет выступать для нас альтернативой демону синхронизации времени с помощью NTP.

Скриншоты окна программы ClockSync до синхронизации (слева) и после (справа):

На скриншотах видно, что разница с точным временем оказалась достаточно маленькой, однако, бывают разные ситуации, у некоторых время на устройстве может даже плавать туда-сюда поскольку оператор не удосужился навести порядок у себя на БС.

Убедившись, что всё работает, настроим автоматическую синхронизацию в программе ClockSync. Для повышения точности я рекомендую включить опции «Режим высокой точности» и «Только через WI-FI». Если с первой опцией всё понятно из описания в программе (см. скриншот ниже), то вторую опцию я рекомендую включить в первую очередь не из соображений экономии мобильного трафика, а из-за того, что мобильный интернет не способен гарантировать хоть сколько-нибудь стабильные задержки.

Немного подробнее о точности:

Всё ещё распространённый мобильный интернет 2-го (GPRS/EDGE) в принципе не в состоянии обеспечить стабильные задержки при передаче. Даже интернет 3-го (3G) и, в некоторой мере, 4-го (LTE/LTE-advanced) поколений при сильной загрузке сети или каналов связи между БС, что является типичной ситуацией для крупных населённых пунктов, не может гарантировать стабильные задержки. Поэтому даже с аппроксимацией конечная точность установки времени может быть хуже долей секунд и даже легко достигать нескольких секунд.

Скриншот настроек автоматической синхронизации в ClockSync:

В связи с масштабными изменениями часовых поясов в РФ осенью этого года необходимо уже сейчас задуматься об актуализации информации о них на всех устройствах и если с поддерживаемыми настольными ОС проблем не возникает, то в Android даже самая свежая версия ОС содержит устаревшие данные. Для того чтобы в этом убедиться устанавливаем TimeZone Fixer и наблюдаем неприглядную картину.

Скриншот программы TimeZone Fixer, запущенной на Android 4.4.4 (прошивка Cyanogenmod от 4 августа 2014), на котором хорошо видно, что данные в прошивке неактуальные:

Немножечко здравого беспокойства и заботы о пользователях:

Автор программы TimeZone Fixer предупреждает нас, что обновление файлов данных о часовых поясах может полностью «сломать» устройство и даже даёт рекомендации о том как обезопасить себя от дополнительных проблем, хоть случаи проблем единичные и очень специфичные - это действительно хорошая забота о простых пользователях.

Только поэтому я и внёс этот кусочек в статью, он хоть и не имеет непосредственного отношения к проблеме, но это действительно хороший пример заботы о пользователях. В то же время предупреждение насчёт версий 4.3+ вызвано лишь малым количеством отзывов о программе для устройств с новыми версиями ОС, поэтому, пожалуйста, после использования обязательно напишите о́тзыв об этом приложении.


После обновления данных о часовых поясах программа предло́жит перезагрузится, однако, я рекомендую перезагрузить устройство самостоятельно через системное меню поскольку программа осуществляет перезагрузку фактически эквивалентную reset, что, пусть и с малой вероятностью, но может привести к проблемам и потери данных.

С удовольствием отвечу на любые вопросы или внесу дополнения, которые сообщество посчитает необходимыми, однако, хочется избежать перегруженности статьи дополнительной информацией, дабы придерживаться формата компактного руководства по решению конкретной проблемы.

UPD: Эта инструкция полностью решает проблему часовых поясов только для версий младше 4.4 . С версии 4.4 нужен дополнительный патчинг, пока вопрос находится на стадии исследования возможностей для создания юзер-френдли решения.

Кажется, что такое простое действие, как настройка даты и времени на Android, не должно вызывать затруднений. Действительно, для опытных владельцев смартфонов или планшетов это банальная операция. Однако для тех, кто впервые держит в руках устройство под управлением этой операционной системы, настройка данных параметров может вызывать вопросы. Ниже разберем, как настроить дату и время на Android.

Меняем дату и время вручную

Для корректировки времени и даты вручную, нужно войти в настройки устройства. Сделать это можно двумя путями:

  1. Вертикальным от строки состояния раздвинуть шторку и тапнуть на иконке, изображающую шестеренку.
  2. Войти в меню приложений, тапнув по иконке с изображением шести точек, расположенной в док-баре. Найти иконку с изображением шестеренки и коротким по ней открыть раздел «Настройки ».

Найдите внизу открывшегося списка пункт «Дата и время » и коротким касание по нему откройте данную вкладку. В некоторых гаджетах меню настроек может выглядеть иначе, а настройки времени и даты надо искать в разделе «Опции ».

Ручная настройка времени и даты будет доступна, если снята галочка с опции «Автоопределение времени » или «Дата и время сети » находится в положении выключено (в зависимости от версии Android).

  • Чтобы поменять дату, выбираем пункт “Дата » или «Установить дату », где выбираем число, месяц и год и подтверждаем тапом по кнопке «Ок».
  • Чтобы поменять время, нужно выбрать пункт «Время » или «Установка времени », где устанавливаем правильное время и подтверждаем тапом по кнопке «Ок». Здесь же можно установить формат времени – 12 часовой или 24 часовой.

Автоматическая установка даты и времени

Android может выстанавливать время и дату в автоматическом режиме. В этом режиме сведения синхронизируются из сети оператора. Естественно, сим карта должна быть установлена в устройство. Для автоматической установки времени и даты нужно установить галочку на пункте «Автоопределение времени ». Ручная установка при этом станет недоступна.

  1. Опция «Автоматическая установка даты и времени». Ее обычно используют в мобильных устройствах на операционной системе Андроид с подключением к интернету. Она позволяет синхронизировать часы мобильного устройства с часами, расположенными на сервере интернет-провайдера. При ее включении изменить дату и время вручную будет невозможно. Поэтому галочку с этой опции нужно снять.
  2. Во многих устройствах на андроиде есть функция автоматического выбора часового пояса (синхронизация по сети или GPS). Чтобы получить доступ к ручной настройке ее также необходимо отключить.
  3. Выбор часового пояса. При нажатии на кнопку открывается список городов с различными часовыми поясами. Если в нем нет населенного пункта, в котором вы проживаете, надо просто выбрать расположенный ближе к вашему месту жительства.
  4. Установка даты. При нажатии на этот пункт откроется календарь. Чтобы изменить дату, нужно просто выбрать в нем конкретное число, месяц и год. Нажать на кнопку «Ок» («Готово»).
  5. Формат отображения (24- или 12-часовой). При использовании 12-часового формата время после полудня будет отсчитываться, начиная с единицы (вместо 13 - 1 час и т. д.).
  6. Настройка времени. Эта опция позволяет установить время, выбирая соответствующие значения из столбиков, обозначающих часы и минуты. Затем нажать на кнопку «Готово» (Ок).
  7. Чтобы вернуться на рабочий стол после завершения процедуры, достаточно нажать на стрелку, направленную вверх. Она расположена внизу страницы.

О том, что часы в мобильном отстают узнаешь, как правило, когда куда-то опоздал, примеру, на поезд. В XXI веке неприемлемо когда ваши часы спешат или отстают больше чем на минуту.

И если к наручным часам претензий нет, то смартфоны просто обязаны показывать точное время. Но как показывает практика — это не всегда так. Часы на телефонах такие же «брехучие» как и старые ходики у бабушки в деревне.

Чем определяется точность электронных часов

В первую очередь точностью настройки и стабильностью кварцевого генератора (резонатора). Точность и стабильность частоты последнего как правило составляет 10 -6 . В идеале при таком значении часы убегают чуть более 30 секунд в год.

На практике стабильность немного хуже, так как на частоту резонатора влияют параметры окружающей среды (температура, давление) и напряжение питания генератора. Так же в состав генератора входят и другие элементы, к примеру конденсаторы, параметры которых сильнее зависят от внешних воздействий. В результате часы могут убегать до 30 секунд в месяц.

Повышаем точность часов

В профессиональных устройствах, например в приемо-передающей аппаратуре спутникового телевидения, стабильность генераторов намного выше и может достигать значений 10 -12 .

Поэтому напрашивается сам собой способ взять за эталон частоту несущей внешнего источника сигнала. И использовать ее как опорную для нашего генератора. Возможны два пути: аппаратный и программный.

В первом случае частота генератора часов подстраивается под частоту несущей передающей вышки GSM. Во втором случае базовая вышка GSM передает сигналы точного времени и операционная система подстраивает часы.

Но как показывает отечественная действительность, на сотовых операторов надежды нет. Я несколько раз попадал в ситуацию, когда время на часах перескакивало на несколько часов. После чего пришлось отключить опцию использования данных предоставляемых сетью.

Серверы точного времени

Так как смартфон это компьютер с доступом в интернет, то проще всего синхронизировать часы с эталонными серверами точного времени. В стандартных прошивках этой возможности нет. Но проблема решается установкой допольнительного ПО. Программ таких несколько, и мне приглянулась одна — ClockSync от «отечественного производителя»:-).

ClockSync синхронизирует системное время Android устройства через Интернет по протоколу NTP с серверами точного времени. Программа полезна если оператор сотовой связи не поддерживает NITZ (автоматическую синхронизацию времени) или посылает неверные значения, а также в случае, если часы телефона сильно убегают вперед или отстают.

Работает на планшетах. Актуально если нужно точное время. Тем более на устройствах без GSM модуля.

Настройка даты и времени в операционной системе Android - вещь несложная, но и с ней у пользователя в ряде случаев могут возникнуть затруднения. Они могут быть связаны как с незнанием некоторых вещей, так и со сбоями самой операционной системы.

Как настроить дату и время на Android

Правильные дата и время не только помогают пользователю быть более пунктуальным - мало кому захочется пропустить автобус из-за неверно выставленного времени - они также важны для работы некоторых приложений, которые при неверных данных могут начать сбоить и работать с ошибками. Поэтому выставлять правильные дату и время на устройстве строго рекомендуется.

Сам процесс настройки даты и времени в разных версиях Android примерно одинаков: разве что в новых устройствах система просит настроить данные сразу, ещё до начала использования приложений. Помимо этого, названия пунктов меню, отвечающих за время и дату, могут незначительно отличаться друг от друга в разных версиях ОС.

После этих нехитрых манипуляций дата и время должны измениться.

Видео: настройка времени и даты

Если возникают проблемы

Случается, что при настройке даты и времени происходят ошибки: не применяются изменения, свежеустановленные время и дата сбрасываются, а то и вовсе из «Настроек» выкидывает с ошибкой. Причин может быть множество, но самые частые из них таковы:

  • у вас включена автосинхронизация времени, и поэтому попытки ручного изменения ни к чему не приводят. Чтобы отключить автосинхронизацию, нужно снять галочку с «Использовать дату и время сети» в настройках даты и времени;
  • проблема связана с единичным сбоем в работе системы и должна прекратиться после сброса настроек или перезагрузки;
  • брак в прошивке устройства - в таком случае, если вы не являетесь опытным пользователем, лучше всего будет обратиться к мастеру в сервисный центр, поскольку при попытке перепрошить устройство самостоятельно велик риск его повредить;
  • произошёл конфликт часовых поясов телефона и SIM-карты (чаще всего такое случается с оператором Tele2).

Чтобы исправить проблему с конфликтом часовых поясов и SIM-карты, проделайте следующие действия:

Автосинхронизация даты и времени

Если вы не хотите настраивать время и дату вручную, то можете воспользоваться встроенной в Android функцией автоматической синхронизации времени с сетью. Или, если же важна максимальная точность, - её улучшенной версией, для реализации которой потребуются root-права.

Обычная автосинхронизация

Чтобы синхронизировать дату и время с данными сети, нужно отметить галочкой всего один пункт, находящийся в меню настроек «Дата и время». Обычно он называется «Использовать дату и время сети», но возможны также варианты «Автоматические дата и время», «Синхронизировать с сетью» и другие подобные.

После того как напротив этого пункта будет установлена галочка, дата и время на телефоне или планшете синхронизируются с данными сети и впредь будут определяться автоматически. Пока эта функция включена, ручная настройка даты и времени невозможна.

Когда отмечена галочка «Использовать дату и время сети», система сама сверяет дату и время с сетью

«Умная» синхронизация

Стандартная синхронизация не отличается точностью и работает с погрешностью в среднем 500 миллисекунд (это примерно половина секунды). Связано это с тем, что при её создании использовались старые и довольно медленные протоколы передачи данных. В результате информация об актуальном времени попросту не успевает прийти вовремя и слегка запаздывает. Это приводит к погрешности, которую исправляют многочисленные приложения для «продвинутой» синхронизации времени.

Для нормальной работы приложениям необходимо вмешиваться в настройки Android, но по умолчанию у них такого права нет. Поэтому, чтобы провести умную синхронизацию, нужно иметь на своём устройстве права суперпользователя, или root-права. Впрочем, те приложения, которые наиболее продвинутые, с грехом пополам, но обходятся без них.

Алгоритм получения root-доступа уникален для каждой модели телефона, которых на данный момент сотни. Не существует общего способа, который позволял бы получить права суперпользователя на любом устройстве: даже самые популярные приложения для «взлома» root-прав действуют с ограниченным набором моделей, и подойдёт ли конкретное приложение вам - неизвестно. Для получения root-доступа на конкретном устройстве требуется ознакомиться с технической документацией по его рутированию на специализированном ресурсе.

Существует несколько приложений для смарт-синхронизации, и все они похожи друг на друга. Разберём работу с ними на примере приложения ClockSync.

ClockSync можно скачать с официальной страницы в Google Play. Однако это приложение - одно из самых ресурсоёмких и многофункциональных: например, в нём можно менять сервер, с которым сверяется время. Если вы не настолько продвинутый пользователь, то можете использовать какой-нибудь более простой аналог: например, Smart Time Sync.

Настройка часового пояса

Изменить часовой пояс, определённый на устройстве, можно в том же пункте настроек, «Дата и время». Строчка «Часовой пояс» позволяет изменить пояс, установленный по умолчанию.

У часового пояса так же, как и у даты со временем, есть параметр автосинхронизации. Можно включить его, если вы не уверены в знании собственных часовых поясов, но в старых версиях Android этот параметр иногда сбоит, поэтому там рекомендуется настраивать его вручную.

Чтобы синхронизировать часовой пояс с сетью, нужно включить параметр «Использовать часовой пояс сети»

Какой именно часовой пояс используется в вашем регионе, можно узнать с помощью средств массовой информации по своему месту жительства, включая интернет. Московский пояс - GMT+3, в Санкт-Петербурге и средней полосе России также в основном используется он. В целом по России используются часовые пояса от +3 до +12.

Чтобы выбрать часовой пояс, нужно нажать на кнопку «Часовой пояс» и выбрать из огромного списка тот, что используется в вашем регионе. После этого время будет выставлено в соответствии с выбранным поясом.

Чтобы выбрать часовой пояс, просто найдите в списке нужный и нажмите на него

Часовой пояс сбивается

Сбиваться часовой пояс может в нескольких случаях: или неправильно работающая автосинхронизация (в этом случае надо включить ручной выбор пояса), или неверно выставленный регион в настройках телефона или планшета.

Помимо этого, причиной сбоя может быть ошибка в базах данных. В таком случае поможет лишь одно из приложений для «умной» синхронизации, о которых уже было сказано; серверы, используемые ими, обычно определяют часовой пояс без ошибок. Однако для использования таких приложений требуется root-доступ. В настройках таких приложений существует пункт «Автосинхронизация», включение которого возможно только с «рутом». Если автоматическая синхронизация часовых поясов включена, пояс тоже будет определяться приложением автоматически - и делать это точнее, чем системное меню.

В главном меню настроек ClockSync и подобных приложений есть кнопка «Автосинхронизация часового пояса»

Видео: «починка» часового пояса через приложение

Настраивать время и дату на Android просто - если от телефона не требуется максимальной корректности результата. Если же вы хотите, чтобы ваши часы были предельно точны, придётся постараться. В любом случае правильно определяемое время - ценная функция телефона, которая крайне важна для его нормальной работы.

Похожие публикации