微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android – 经常更新小部件(比UpdatePeriodMillis允许的更频繁)

我想要一个小部件,显示用户启动跟踪公共汽车出发的倒计时.我每隔几分钟就要更新小部件,从用户启动跟踪到总线已经离开(即时间用完)时.

这个小部件需要比updatePeriodMillis允许的频率更新,每30秒钟更新一次.我估计每一分钟一次.

作为Android编程的新手,我可以想到几种方法来做到这一点,但是我可能会以一种消耗太多电池等的方式来完成,所以我正在寻找更多有经验的Android开发人员的一些见解.

如何启动计时器?如何从我的应用程序运行时访问小部件实例?等等.

解决方法

我会注册一个警报,每1分钟启动我的服务,该服务将更新小部件UI
final Intent intent = new Intent(context,UpdateService.class);
final PendingIntent pending = PendingIntent.getService(context,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不会在设备睡眠时不会影响设备的电池寿命.

原文地址:https://www.jb51.cc/android/311988.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐