案例研究

SoundCloud 仅用 2 周时间就利用 Jetpack Glance 构建了“已赞曲目”widget

阅读用时:3 分钟

为了让用户在 Android 设备上更轻松地收听音乐,SoundCloud(一个以音乐人为先的音乐平台)的开发者转而使用 Jetpack Glance 为其备受好评的应用(评分高达 4.6 星,下载量超过 1 亿次)创建了“喜爱的曲目”微件。SoundCloud 拥有超过 4 亿首曲目,这些曲目来自 4,000 多万位创作者。SoundCloud 致力于通过音乐将音乐人和粉丝联系起来,而此次针对 Android 应用的最新更新为听众提供了更便捷的方式来欣赏自己喜爱的曲目。在 Glance 的助力下,该团队仅用了两周时间就完成了项目,节省了宝贵的开发时间,并提高了互动度。

通过人性化的接触点最大限度地提高曝光度

借助全新的“已喜欢的曲目”微件,用户可以展示最近喜欢的曲目的封面,并直接从主屏幕跳转到特定歌曲或访问完整的曲目列表。这样一来,SoundCloud 便会成为听众的首选平台,他们可以通过快捷方式访问自己的个人媒体库,并随时返回 SoundCloud。

“喜欢的曲目”并不是 SoundCloud 的第一个 widget。十多年前,SoundCloud 开发者使用 RemoteViews 创建了一个播放器 widget,让用户可以轻松控制播放和喜欢曲目。最近,开发者根据设计反馈更新了播放器 widget,并确保优先为“已赞曲目”提供个性化界面。这款新 widget 具有浅色和深色模式,可自由调整大小以适应用户偏好,并可动态调整主题以搭配用户壁纸。在 Glance 的支持下,这些设计选择不仅确保了 widget 的使用顺畅性,还使其成为 SoundCloud 应用的吸引人且量身定制的入口。

souncloudJetPack2.png
SoundCloud 的“我喜欢的曲目”微件的实际效果。

借助 Glance 加快开发周期

Glance 在简化“喜欢的曲目”功能的开发方面也发挥了至关重要的作用。对于已经熟练掌握 Compose 的开发者来说,Glance 的直观设计让他们感到熟悉,从而缩短了学习曲线并加快了团队的入门速度。该平台的代码示例集也提供了一个有用的起点,可帮助开发者快速掌握其功能和最佳实践。“使用示例应用代码库是学习的好方法。我可以查看整个代码库,并检查代码的运行方式。”Android 团队的首席 SoundCloud 工程师 Sigute Kateivaite 说道。“它大大加快了我们的 widget 开发速度。”

SoundCloudJetPack3.png

Glance 界面的声明式特性对开发者来说尤其有益。由于在构建时无需使用额外的 XML 文件,开发者可以创建更简洁、更易读的代码,并减少样板代码。Glance 还允许他们单独处理模块,这意味着可以一次编写和集成一个组件,并在后续迭代中重复使用。通过隔离组件,开发者可以快速测试模块、发现并解决问题,并针对不同状态进行构建,而无需重复操作,从而提高工作效率。

Glance 的设计还提高了整体代码质量。借助 Android Studio 对 Glance 实时预览的支持,开发者可以单独构建组件,而无需将界面组件集成到 widget 中或在手机上部署完整的 widget。他们可以表示各种状态、查看所有相关情况,并查看组件的更改,而无需编译整个应用。简而言之,Glance 提高了开发者的工作效率,因为它使他们能够更快地进行迭代,从而改进 widget 以获得更完善的最终产品。

借助 Glance 的强大功能提升应用微件的实用性

SoundCloud 团队称赞 Glance 简化了成功的制作流程,提供了高效的新工作流,并且没有出现重大开发问题。“推出新的‘已赞的曲目’微件后,发布过程非常稳定,”Sigute 说。“开发和测试过程非常顺利。”早期数据显示,效果令人期待 - 活跃用户现在平均每天会与 widget 互动多次,以访问应用。

SoundCloud4.png
用户与微件功能的平均每日互动次数是原来的 2 倍。

展望未来,SoundCloud 团队渴望使用更多 Glance 功能来改进现有 widget,例如采用规范布局,甚至开发新的 widget。虽然当前的“喜爱的曲目”微件主要侧重于图片显示,但该团队有意纳入其他类型的内容,以进一步丰富用户体验。开发者还希望将播放器 widget 迁移到 Glance,以便利用该框架强大的主题设置选项、简化调整大小流程并解决一些长期存在的 bug。

除了“喜欢的曲目”和“播放器”功能之外,该团队还对使用 Glance 构建更多微件的可能性感到兴奋。“喜欢的曲目”微件采用模块化、基于组件的架构,并提供 UserAvatar 和 Logo 等可重复使用的元素,为未来的开发奠定了坚实的基础,有望从一开始就简化流程。

开始使用 Jetpack Glance 构建自定义应用 widget

借助 Glance 快速开发和部署微件,让您的应用始终可见并吸引用户。


这篇博文是我们微件 Spotlight Week 系列博文的一部分,其中提供了各种资源(博文、视频、示例代码等),旨在帮助您设计和创建微件。您可以 在“Spotlight Week:微件”概览中了解详情,该概览将在整个周内持续更新。

继续阅读