Установить точное время на телефон. Проблемы времени и часовых поясов в Android и пути их решения. Если возникают проблемы

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.

О синхронизации времени

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

  • Пользовательское устройство посылает запрос на сервер синхронизации запрос, для чего используется специальный сетевой протокол - NTP (Network Time Protocol).
  • В ответ на запрос сервер формирует NTP-пакет с нужными данными и отправляет его обратно на пользовательское устройство.
  • Встроенная функция синхронизации обрабатывает пакет и настраивает внутренние часы устройства, используя данные из NTP-пакета.
  • Высокая точность синхронизации (вплоть до одной сотой секунды, т.е. 10 миллисекунд) достигается благодаря тому, что функция установки времени учитывает задержку между и отправкой запроса и получение от сервера NTP-пакета.

Сам же NTP-сервер определяет точное время по реально (физически) существующему эталону времени. Это целый комплекс оборудования, в задачу которого входит отчет времени. В мире существует несколько эталонов времени, расположенных в технологически развитых странах, включая Россию. Атомные часы имеются в распоряжении «Всероссийского научно-исследовательского института физико-технических и радиотехнических измерений» (ВНИИФТРИ).

Синхронизация времени с TimeServer на Android

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

Для возможности синхронизации времени на смартфонах и планшетах под управлением Андроид существует только один выход - использование специальных приложений. Но и здесь есть свои нюансы. ОС Android запрещает сторонним приложениям изменять настройки даты и времени, что сделано в целях безопасности. Для полноценной работы приложений синхронизации времени требуется root-права. Без root-прав такие программы не могут изменять системные настройки в автоматическом режиме, однако определять точное время они все же в состоянии. В этом случае пользователю придется время от времени устанавливать время на своем 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 и так далее. Все, что вам нужно - смартфон. Так как Андроид является самой простой платформой, то найти настройки в телефоне проще простого. Обычно меню настроек можно вызвать нажатием сенсорных кнопок или найти в меню.

Вообще, ручная настройка на Андроиде необходима для тех пользователей, у кого отсутствует интернет. Именно при отключённом от сети устройству показатели сбиваются на смартфоне и её нужно выставлять вручную. Итак, как поменять дату в Galaxy S Plus, например, или же в любом другом смартфоне на платформе андроид? Для этого есть два метода:

  1. Опускаем шторку уведомлений и находим в правом верхнем углу значок шестерёнки.
  2. Заходим в главное меню смартфона и находим там тот же знак с надписью Настройки .

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

Итак, далее нам потребуется найти строку под названием Установить дату , после чего нажать на ОК . Время устанавливается точно так же, поэтому расписывать в подробностях этапы установки времени мы не будем. Но в некоторых случаях все же есть Автоопределение пояса , поэтому галочку с этой строки нужно тоже убрать, чтобы выставить правильное время.

И также как с часовым поясом, которым балуются наши соотечественники, власти играются и с вариантами отображения времени. То есть 12-часовой вариант формата или 24. Его вы также сможете изменить, сняв галочку с автоопределения и выбрав тот вариант, который вам нужен. На некоторых моделях Андроида также можно выбирать и варианты показа времени. Как правило, чаще всего на главном и заблокированном экране дата показывается как день/месяц/год. Но вы всегда сможете изменить способ показа, зайдя в настройки и изменив это точно так же, как меняете и время.

Автоматическая настройка

Этот способ гораздо легче предыдущего, но для него необходимо наличие Sim-карты и мобильной сети Интернет.

Если присутствуют оба фактора, показатели выставляются автоматически после включения устройства.

Вам лишь нужно подтвердить, правильно ли выставлены показатели в начале запуска смартфона.

Чтобы время выставилось автоматически, вам понадобится зайди в настройки (способы перехода в этот пункт описаны выше) и поставить галочку на Автоопределение .

Зачастую после активного значения автоопределения времени закрывается доступ к изменению данных настроек вручную.

Поэтому какой выбрать способ - автоматический или ручной - выбирать вам.

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

Чтобы установить самое точное время, понадобится иное приложение. Одним из популярных является приложение ClockSync , которое разработал Сергей Баранов . По размерам, конечно, программа выглядит скромно. Но сколько функций она себя включает! Давайте перечислим их:

  • Автоустановка времени при помощи root-прав и без них.
  • Режим высочайшей точности.
  • Детальная статистика.
  • Настройка интервала правильного и самого точного времени.
  • Опция обновления обо всех доступных часовых поясах.
  • Выбор того или иного сервера для синхронизации времени.
  • Автоопределение того или иного часового пояса.
  • Режим экономии заряда батареи.
  • База часовых поясов (особенно важен этот пункт для старых планшетов и смартфонов).

Подводя итоги

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

И также если стоит неправильная дата и время на фото Андроид-телефона, то при фотосъёмке будет отображаться соответствующий показатель. Отображение времени на фотографиях можно выключить также в настройках, но уже не в главных. Для этого вам нужно будет включить камеру и уже оттуда настроить отображение. Но если по каким-то причинам сделать этого не получается, то рекомендуем вам скачать дату и время на Андроид с помощью каких-то сторонних приложений.

Настройка времени и даты на android



Инструкция

В аппарате на платформе Series 40 вначале нажмите на ту из подэкранных клавиш, над которой на дисплее отображается слово «Меню». Если оно не показано ни над одной из них, нажмите среднюю кнопку джойстика. Найдите в структуре меню пункт «Дата и время». Расположение его зависит от модели аппарата, например: «Настройки» - «Параметры» - «Общие» - «Дата и время».

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

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

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

Способ настройки даты и времени во всех телефонах на платформе Windows Phone 7, в том числе и серии Nokia Lumia, унифицирован. Вначале прокрутите рабочий стол до вкладки, где расположен значок «Настройки». Он выглядит как белая шестеренка на красном фоне. Появится меню. Выберите в нем пункт «Дата+время». Измените желаемые параметры. Для включения или выключения автоматической синхронизации, соответственно, установите или снимите галочку «Устанавливается автоматически».

Источники:

  • как на нокиа установить время

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

Инструкция

Включите свой . В том случае, если вы только что приобрели его и еще ни разу не включали, то при загрузке появится сообщение с предложением ввести текущую дату и время . С помощью клавиатуры задайте эти значения и подтвердите ввод. Аналогичные действия нужно будет произвести при замене сим- /батареи.

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

Измените дату и время на базе Windows Phone. Обычно в данных телефонах дата и время задается мобильным . Вы можете установить эти значения вручную. Отключите телефон от ПК, затем откройте рабочий стол, проведите влево по экрану, перейдите к списку приложений, затем зайдите в пункт «Настройки». Выберите «Дата+Время». Снимите флажок с параметра «Устанавливать автоматически», затем установите нужные значения для часового пояса, даты и времени.