桌面小组件
JSBox 近期发布了 2.12.0
版本,除了修复了一些在 iOS 14 上的 bug 以外,也带来了对于桌面小组件的支持。我们为这个版本准备了很长的时间,其中一个很重要的原因,是希望可以用脚本实现任意想要的小组件,而不是有限的一些效果。
其实 JSBox 从很早期版本就支持用脚本来实现通知中心小组件,用户可以用脚本实现任何界面,支持丰富的交互。大家都知道,iOS 14 的桌面小组件和之前的通知中心小组件有很大的不同,包括用户体验以及底层的技术实现。
关联阅读:一次对 iOS 桌面的大手术,开发者怎么看 iOS 14 的 Widgets 变化
所以我们从开发一开始就定下了一个目标:如果一个小组件可以用原生 iOS 技术实现,它就可以用 JSBox 脚本实现。
工作方式
JSBox 同时支持三种尺寸的小组件,在添加过程中会对每一步进行引导。设置方法是像 Apple 官方教程 提到的那样,进入编辑模式然后选择一个支持小组件的脚本。
此外,桌面小组件支持添加多个,你也可以为每一个小组件设置不同的参数,方便脚本在运行的时候提供不同的数据。
应用内预览
与其它 JSBox 脚本一样,你可以使用 VS Code 进行开发,代码可以推送到设备上运行。
为了更方便开发和测试,我们在应用内提供了与小组件展示效果一致的预览效果,同时提供三种尺寸,你可以在应用内测试完毕之后,再将其应用在桌面。
完备的实现
JSBox 对小组件的支持是完备的,包含了两个方面:
- 更新方式可以和原生小组件完全一样
- 可以灵活地实现各种界面
例如,你可以用脚本实现特定的刷新方式,也可以一次性提供多个界面,系统会按指定的时间去展示。
在界面方面,JSBox 支持了绝大部分可以在通知中心使用的组件,例如:文本、图片、链接、渐变。也可以实现绝大部分效果,比如:颜色、透明度、模糊、旋转等等。
在布局方面也没有任何限制,对界面布局策略的完备支持,可以让你把控件灵活地放到想要的位置。
此外,JSBox 的绝大部分开发接口都可以直接在小组件上使用,例如:网络请求、缓存和数据库、日历和提醒事项等等。区别仅仅在于,小组件上实现界面的方式不一样。
具体的使用细节,请移步到我们准备的 开发文档。
一些例子
为了降低上手难度,我们准备了一些例子。这些例子包括了复杂界面的实现,以及网络请求的最佳实践。
WidgetDoodles
将您的涂鸦作品放置到桌面:
Apple Dev News
在桌面显示 Apple 开发者新闻:
QR Code
在桌面显示任意二维码:
XKCD
在桌面随机显示一张 xkcd.com 的漫画:
Clock
在桌面显示一个实时更新的简单时钟:
以上的例子都可以在 GitHub 上面找到,欢迎参考。
此外,你也可以加入我们的 Telegram 群组获取更多社区小伙伴开发的小组件。
总结
恭喜 ndlg、小强是个坏蛋、Aixtuz、女口田木、Ryoma_Kal 获得 JSBox 兑换码,请留意站内私信。
对于 JSBox 的小组件功能介绍就到这里了,欢迎大家提出意见和建议。我们之后会以开发者的角度,分享更多「动态实现小组件」的技术细节,敬请期待。
感谢阅读。
欢迎在评论区留下你对于 JSBox 此次更新的建议和看法,我们会抽取其中 5 条建设性的评论,送出 JSBox 高级版一年的兑换码。
你可以在 App Store 购买 JSBox。
> 下载少数派 客户端 、关注 少数派公众号 ,发现更多实用 App 📱
> 实用、好用的 正版软件,尽在 少数派「双十一」活动 🚀