Android: есть ли дополнительная информация от Intent.ACTION_TIME_CHANGED? - PullRequest
3 голосов
/ 13 октября 2011

Есть ли какая-либо дополнительная информация от Intent.ACTION_TIME_CHANGED? В getData () или getExtras () ничего нет.

Хотелось бы знать:

  • Время телефона было до установки нового времени;

  • Кто изменил время: пользователь (вручную) или телефонный оператор?

Любой другой способ получить эту информацию приветствуется!

Ответы [ 2 ]

2 голосов
/ 14 сентября 2012

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

0 голосов
/ 19 декабря 2013

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

Регистрация для действия трансляции ACTION_TIME_TICK (Это будет транслироваться каждую минуту).

Когда тикает время, если разница между текущим временем и временем последнего тика превышает 1 минуту, можно сделать вывод, что произошла смена времени. После этого вы просто обновляете новое время для общего доступа. Вот и все.

  1. Зарегистрируйтесь для трансляции ACTION_TIME_TICK.
  2. Когда трансляция получена: 2.1 В случае трансляции в первый раз введите текущее системное время в «Общее предпочтение». 2.2 иначе сравнивайте текущее время с ранее введенным временем и, если возникает разница более 1 минуты, означает, что время изменилось. Затем обновите новое системное время до SP.

Удачного кодирования.

...