美文网首页
iOS Widget tips

iOS Widget tips

作者: 大冯宇宙 | 来源:发表于2022-07-29 08:50 被阅读0次

记录几个小点,当做备忘,希望也能帮助到你。
如果公司让你调研Widget,这一篇也足够用了。

  • Widget 申请证书时候,需要选择group,为了Widget和主工程共享数据,要注意的是需要在主工程和Widget工程的target下要配置好group。而且刚配置完的时候并不能及时的生效,需要等一会,可能是苹果的缓存。

  • 支持iOS14+

  • 仅能用Swift + SwiftUI开发

  • 默认点击Widget打开主应用程序

  • 支持三种大小
    ○ 小-支持整体点击跳转到固定为止,可以进行tab切换等操作
    ○ 中-支持具体控件点击跳转
    ○ 大-同中

  • 支持最多5组Widget,每组Widget三个

  • 不提供动画,仅支持静态页面展示。

  • 不支持拖拽、滚动等复杂的交互,不支持 Switch 等控件。

  • 更新频率由系统通过机器学习来动态分配
    ○ 当用户编辑主屏幕添加小组件时,先触发 placeholder(in:) 来优先显示占位效果。
    ○ 在预览状态,触发 getSnapshot(for:in:completion:) 创建快照以提供相对完整的信息展示。
    ○ 在主屏上成功添加小组件后,将执行 getTimeline(for:in:completion:) 获取未来时间节点上的数据和相关更新策略。

  • 通过 timeline Provider 提供在未来特定的时间节点的一连串 TimelineEntry 数据,并且可以设置 更新策略:
    ○ after:在特定时间后触发更新。
    ○ atEnd:在 timeline 中所有的 entry 都展示完之后更新。
    ○ never:仅在主 App 触发更新。

  • 苹果提供了两种刷新小组件的方式,System reloads 和 App-driven reload。
    ○ System reload
    由系统发起,刷新频次也由系统控制。为了保证性能,系统会根据各个 reload 请求的重要程度来控制是否刷新 timeline。因此,过于频繁的提交刷新请求可能无法达到预期。
    ○ App-driven reloads
    由 App 触发小组件的 timeline 刷新。当主程序在后台时,可通过后台推送触发刷新;当主程序在前台时,可以通过 WidgetCenter 实现。

  • 因为Widget是一个独立的工程,可以单独搞一个Swift工程出来开发,不需要load整个主工程,提高编译开发速度,等开发完再合入到主工程的Widget框架内

相关文章

  • iOS Widget Tips

    1.默认高度preferredContentSize NCWidgetDisplayMode.compact模式下...

  • iOS Widget tips

    记录几个小点,当做备忘,希望也能帮助到你。如果公司让你调研Widget,这一篇也足够用了。 Widget 申请证书...

  • SwiftUI-Widget 使用及避坑指南

    iOS Widget简单介绍( 只介绍iOS 14 以后Widget相关内容): Widget 是 iOS 14 ...

  • IOS Widget 开发笔录

    IOS widget开发笔录 刚完成IOS widget开发,仿照UC头条,头条日报widget,附上效果图: 目...

  • iOS 多个widget调试问题

    iOS 多个widget调试问题 iOS widget 小组件开发 链接[https://www.jianshu....

  • iOS资源

    iOS开发200个tips总结(一) iOS开发200个tips总结(二) iOS中NSFileManager文件...

  • iOS 11 适配以及Xcode 9小Tips

    iOS 11 适配以及Xcode 9小Tips iOS 11 适配以及Xcode 9小Tips

  • iOS Widget开发小结

    从iOS8开始, 系统开始支持iOS Widget,就是如下图.Widget是Extension的一种Today,...

  • Flutter基本知识整理笔记

    与iOS开发的异同。例:Widget和UIView,交互等 生命周期,Widget 常用Widget介绍 路由跳转...

  • flutter widget组件Tips

    长按拖拽组件 - LongPressDraggable 设置拖拽手势响应时间属性 delay 系统介绍 delay...

网友评论

      本文标题:iOS Widget tips

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