Часто обновление виджета (чаще, чем позволяет updatePeriodMillis)

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

Этот виджет нужно обновлять чаще, чем позволяет updatePeriodMillis , который каждые 30 секунд. Я считаю, что раз в минуту.

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

Как начать таймер? Как я могу получить доступ к экземпляру виджета из времени выполнения моих приложений? И так далее.

Solutions Collecting From Web of "Часто обновление виджета (чаще, чем позволяет updatePeriodMillis)"

Я зарегистрировал бы будильник, чтобы начать мой сервис каждые 1 минуту, и служба обновит интерфейс виджета

 final Intent intent = new Intent(context, UpdateService.class); final PendingIntent pending = PendingIntent.getService(context, 0, intent, 0); final AlarmManager alarm = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE); alarm.cancel(pending); long interval = 1000*60; alarm.setRepeating(AlarmManager.ELAPSED_REALTIME, SystemClock.elapsedRealtime(),interval, pending); 

AlarmManager.ELAPSED_REALTIME не будет активировать устройство, если он сработает от аккумулятора, не должен быть затронут.