Android小部件更新频率为0,它实际意味着什么?

 呼噜垃圾桶 发布于 2023-02-08 13:12

我在一个小部件中找到了以下代码部分:


    android:updatePeriodMillis="0"

现在,我的问题是:它确实意味着updatePeriodMillis设置为0.
我知道它是根据窗口小部件接收remoteview或其他人的频率设置的.那么,将它设置为0有什么意义.

2 个回答
  • 将updatePeriodMillis设置为0时,实际上是禁用该特定窗口小部件上的更新周期.意味着,该属性不再适用于该小部件.

    2023-02-08 13:14 回答
  • 根据android文档:

    所述updatePeriodMillis属性定义如何经常在App组件框架应要求从一个更新的AppWidgetProvider通过调用的onUpdate()回调方法.实际更新不能保证准确地按时发生,我们建议尽可能不经常更新 - 也许每小时不超过一次以节省电池.您可能还允许用户调整配置中的频率 - 有些人可能希望股票代码每15分钟更新一次,或者一天只能更新四次.

    注意:如果设备在更新时处于睡眠状态(由updatePeriodMillis定义),则设备将被唤醒以执行更新.如果每小时更新不超过一次,这可能不会导致电池寿命出现严重问题.但是,如果您需要更频繁地更新和/或在设备处于睡眠状态时不需要更新,则可以根据不会唤醒设备的警报执行更新.为此,请使用AlarmManager使用AppWidgetProvider接收的Intent设置警报.将警报类型设置为ELAPSED_REALTIME或RTC,它仅在设备唤醒时发出警报.然后将updatePeriodMillis设置为零("0").

    2023-02-08 13:14 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有