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

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

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

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

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

После этого перед вами откроется окно со списком часовых поясов. Для того чтобы выбрать один из них просто нажмите на него.

Надеюсь данная статья была вам полезна, и теперь вы знаете, как изменить время на Android смартфоне или планшете.

Не секрет, что российские законодатели, особенно те, что сидят в нижней палате парламента, ребята очень активные и хоть зарплату им не плати, но дай понавыпускать различных нормативных актов. Так вот, летом 2014-го года парламентарии взяли и приняли очередной закон о замене часовых поясов на территории Российской Федерации. В каких-то регионах часовой пояс не поменялся, а в каких-то он сменился на новый. Но, многие производители электроники были не готовы к такому повороту, что осенью время вдруг взяло и поменялось.

Не готовы к подобному радикальному шагу были и в компании Samsung. Так как даже для своего флагмана S5 Samsung не позаботился о выпуске своевременного обновления к прошивке с поправленной часовой зоной. Например, в Москве, часовая зона с GMT+4 была переведена на GMT+3. Чем сей перевод чреват для пользователей? А тем, что сразу же нарушается стройный распланированный ход жизни владельца. Все напоминания, все встречи и даже записи в журнале звонков, в мгновение ока перемещаются в пространстве-времени и угадать, на какое нужно ставить время напоминание, что бы оно сработало именно тогда, когда нужно может не каждый обладатель красного диплома престижного вуза. А, что уж говорить о других?

И пока Samsung тормозит с выпуском обновления, попробуем самостоятельно разобраться, что нужно сделать с телефоном продать и купить Nokia или iPhone , что бы он нормально отображал время и с нужным часовым поясом.

Вариант 1. Автоматический.

Вариант 2. Прикинуться шлангом.

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

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

Поскольку для Москвы по-новому действует зона GMT+3, а по умолчанию в телефоне для Москвы жестко прошита зона GMT+4, то для того, что бы время вернулось в нормальное русло, придется выбрать, например Минск, у которого временная зона соответствует с нужными для Москвы значениями. Для других регионов действовать нужно аналогичным образом.

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

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

Вариант 3. Для джидаев.

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

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

Итак, рут-доступ в наличии и для того что бы заменить данные в базе данных с часовыми поясами на телефоне необходимо использовать бесплатную программу TimeZone Fixer . При запуске, программа определяет текущую версию установленной на телефоне базы данных и при необходимости производит обновление имеющихся в ней значений. После завершения работы, необходимо перезагрузить телефон. Конечно, изменить базу данных можно и при помощи других программ, доступных также с Google Play, равно, как и провести все манипуляции полностью самостоятельно используя лишь стандартный инструментарий.

После перезагрузки, в списке часовых зон наконец-то появляется искомая зона для Москвы GMT+3, и правильные зоны для других регионов. Выбираете нужный (свой) регион, предварительно не забыв отключить автоматическое обновление времени и часового пояса из сотовой сети. И вроде бы все должно исправиться и наладиться но, увы, Galaxy S5 работает на системе Android 4.4.x, а именно в семействе этих систем, ради красоты или каких-то других целей, временные зоны прописались еще в одном месте. Возможно, что аналогичное поведение будет сохранено и во всех последующих версиях Android.

Теперь, время и временная зона на телефоне отображаются верно, а вот события в Google Calendar, время звонков в журнале и SMS в папке с SMSками отображаются неверно. Используется старая часовая зона. Все дело в том, что необходимо поменять еще один файл, в котором по воле не совсем грамотных разработчиков системы, хранятся альтернативные значения для временных зон. Что бы исправить и это, необходимо сделать следующее:

А. Скопировать файл, расположенный по адресу /system/usr/icu/icu51dt.dat с телефона на компьютер или на SD карточку телефона. Сделать это можно, например, при помощи Root Explorer или аналогичной программы. Учтите, что файл достаточно объемный, порядка 18 мегабайт.

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

В. Скопировать скачанный обработанный файл с сайта обратно в /system/usr/icu/icu51dt.dat. Убедиться, что права доступа для всех групп установлены как минимум в режим чтения. Перезагрузить телефон.

Г. Наслаждаться правильной часовой зоной, отсутствием сдвига времени в календаре, звонках и SMS-ках.

Послесловие

Вообще, термин GMT (Greenwich Mean Time) несколько устарел. Дело в том, что время по Гринвичу уже давно никто не измеряет. Кончилось время Британской империи, кончился и GMT. Нынче мерилом начала отсчета принято использовать UTC. Хотя для бытового применения разница существует только в наименовании стандартов.

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

Иногда случается, что часы на андроид телефоне или планшете показывают неправильное время. Причем вы точно помните, что правильно выставляли время и никто не мог его поменять. Как это происходит и почему на андроид сбиваются часы. К счастью, существуют всего две причины по которым это могло произойти. Либо у вас стоит неправильный часовой пояс, либо у вас оператор сотовой связи предоставляет неверную информацию. Последнее случается, когда сим-карта была приобретена в другом городе и для неё действуют настройки сети для другого региона. Чтобы проверить и при необходимости исправить это надо сделать следующее. Прежде всего, зайди в настройки вашего телефона и выберите раздел «Дата и время».

На поздних версиях андроидах (4.1+) появилась функции автоматического определения даты и времени. Эту информацию предоставляет оператор вашей сотовой связи. К примеру, у меня и время и дата определена правильно.

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

Вспомнил, что вместе с коллегой по работе уже давно решил эту проблему на Android (HTC Hero) и хотел написать в песочницу, но все откладывал на потом. А сегодня появилась очередная статья «Обновление временных зон на Android» практически похоронившая идею написания и, подтвердившая идею, что не надо откладывать важные вещи на потом. Но… немного повспоминав, я всё-таки решился, потому что в данных статьях рассматривалась проблемы связанные с переходом на зимнее/летнее время и совсем не затрагивался момент касающийся работы виджета часов с погодой и автоматического определения времени через оператора сотовой связи.

Все началось с того, что был приобретен новый телефон HTC Desire S.

В процессе настройки выяснилось, что в настройках даты и времени нет возможности выбрать мой город - Новосибирск и приходиться выбирать альтернативный город с подходящим часовым поясом.
Так же выяснилось, что синхронизация времени от оператора работает как-то загадочно и виджет HTC Clock в режиме отображения погоды и включенной автоматической синхронизацией отображает некорректное время.

На картинке может показаться, что всё в порядке, однако время на самом деле на телефоне убежало на час назад. Можно отключить автоматическое определение и выставит зону руками, но тогда получим следующее:

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

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

Можно было на все это забить, отключить, выставлять руками и не обращать внимания на виджет, но… это же Android - а это значит, что мы можем и должны его победить!

И так, мы начинаем
Новый телефон был на тот момент не рутованый и сделать его таковым не представлялось возможным. Поэтому для экспериментов был взят HTC Hero с оригинальной прошивкой + root/busybox/apps2sd, на котором были точно такие же проблемы.

Нашли через osmonitor приложение, в котором выбирается часовой пояс - (com.android.settings). Посмотрели исходники пакета com.android.settings и выяснили, что ресурсы загружаются из XML файла timezones.xml .

Достали apk этого приложения /system/app/Settings.apk следующей командой:
adb pull /system/app/Settings.apk

Не стану описывать все подробности работы APK manager и Android SDK tools, думаю, заинтересованные люди легко разберутся. Остановлюсь только на ключевых моментах.

С помощью APK manager произвели следующие действия

  • decompile
  • ручками в другом окне отредактировали файлы
  • compile. При компиляции APK manager задает вопросы:
    «Is this a system apk (y/n)» – отвечаем yes
    «Aside from the signatures, would you like to copy over any additional files that you didn"t modify from the original apk in order to ensure least # of errors (y/n)» -тоже отвечаем yes.
    Далее действуем по предложенной APK manager-ом инструкции, в другом окне удаляем из директории keep файлы, которые мы изменили + resources.arsc.
  • Завершаем сборку.
Мы сделали изменения для своего города, по аналогии жители других городов тоже смогут попробовать устранить данную проблему на своих телефонах.

Получившийся apk поместили обратно в телефон:
adb push Settings.apk /system/app/

Этим мы добились того что в списке ручного выбора временной зоны появился Novosibirsk.

Наш город появился в списке, но определение временной зоны в автоматическом режиме по-прежнему работало неверно. Для этого мы пошли дальше и выяснили что, настройки временных зон для городов хранятся в базе данных, а именно в файле /system/etc/WPDB.zip.
Достав его из телефона с помощью всё того же adb, мы извлекли из него две базы

  • WP_0409WWE.db
  • WP_0419RUS.db
для английского и русского языков соответственно. Посмотрев на данные, мы обнаружили, что для нашего города, временная зона прописана как Asia/Almaty, пришлось поправить и этот момент, для этого в базах поменяли timezoneId на Asia/Novosibirsk (использовали Lita в качестве редактора SQLite database):
update locationlist set timezoneId = "Asia/Novosibirsk" where name = "Novosibirsk" -- (для WP_0409WWE.db) update locationlist set timezoneId = "Asia/Novosibirsk" where name = "Новосибирск" -- (для WP_0419RUS.db)
Кроме того, еще в одну базу добавили запись о нашем городе, а именно в /system/etc/timezones.db
Добавили запись, timezoneId: Asia/Novosibirsk, остальные поля Novosibirsk, ru – Новосибирск.

Для того чтобы все сделанные изменения вступили в силу, сбросили кэш для приложений
Clock, Settings и Weather Provider. Ну и для полной уверенности перезапустили телефон.

Итоги

В результате получили вот такие пироги:

Как мы видим, в автоматическом режиме зона определяется корректно, системное время и время на виджете одинаковое, ну и в ручном режиме все в порядке.

Ввязавшись в войну со временем, мы решили идти до конца. А именно решить и проблему отмены перехода на зимнее/летнее время.
Скачали самую свежую tzdata (aka timeinfo.dat) с, тогда еще доступного, ресурса

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

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

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

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

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

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

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

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

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

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

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

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

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

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