美文网首页
iOS Widget 组件开发知识整理

iOS Widget 组件开发知识整理

作者: 高浩浩浩浩浩浩 | 来源:发表于2023-08-07 15:14 被阅读0次

    1. 组件刷新时机

    根据官方文档描述:

    小组件预算的适用周期为 24 小时。WidgetKit 会根据用户的日常使用模式调整 24 小时窗口,这意味着每日预算不一定会在午夜重置。对于用户经常查看的小组件,每日预算通常包括 40 到 70 次刷新。这一速率可以大致换算为每 15 到 60 分钟重新载入一次小组件,但是由于涉及到多个因素,这些时间间隔通常会有所不同。

    在下列情况中,WidgetKit 不会将重新载入次数计入小组件的预算:
    1. 小组件的包含 App 在前台。
    2. 小组件的包含 App 有活跃的音频或导航会话。
    3. 系统语言区设置发生更改。
    4. 动态类型或辅助功能设置发生更改。

    TimeLine 刷新机制:

    TimelineReloadPolicy
    atEnd 当前组展示完成后请求,根据测试现象来看是当前Timeline里面的entry事件处理完成以后回再次 执行 getTimeline方法
    never 永远不主动请求, 当前entry执行完毕以后 就结束了
    after 设定一个刷新时间,到点请求,可以设置定时触发

    关于刷新测试出来的一些情况:

    1. 如果当前widget没有在首页展示出来,刷新时间会晚一些。
    2. 系统调用下一次 getTimeLine 事件时间是不确定的,并不是严格按照我们写的时间
    3. 在debug调试的时候,并不会被限制70次刷新,刷新频率也基本上是按照代码设置的间隔进行刷新的,但是release情况并不会这样子。

    相关文章

      网友评论

          本文标题:iOS Widget 组件开发知识整理

          本文链接:https://www.haomeiwen.com/subject/uxzipdtx.html