写点什么

Lyft 如何利用 iOS 实时活动来提升用户体验

  • 2024-05-05
    北京
  • 本文字数:1106 字

    阅读完需:约 4 分钟

大小:534.24K时长:03:02
Lyft 如何利用 iOS 实时活动来提升用户体验

Lyft iOS 工程师 Max Husar 解释说,向用户提供及时更新是改善移动体验的关键,尽管这将增加开发范围和工作量。为了在灵活性、可靠性和可重用性之间取得平衡,Lyft 的工程师使用 iOS ActivityKit 将动态内容添加到他们的应用程序中。


ActivityKit 是苹果在 iOS 16.1 和 iPadOS 17 中引入的,它允许用户使用新设备上的灵动岛(Dynamic Island)或旧设备上的锁屏来共享应用程序的实时更新。ActivityKit 的基石是实时活动(Live Activities),可以将它视为通知的演进,因为它们不仅允许用户接收最新信息或启动应用程序,还可以在不通过按钮和切换启动应用程序的情况下执行功能。


正如 Husar 所解释的那样,Lyft 的工程师将每个实时活动(Live Activity)都当作一种在主应用程序之上运行的迷你应用程序来处理。这也反映了 Lyft 的组织架构,即多个团队同时在不同的领域工作。


我们决定使用服务器驱动的用户界面(SDUI)来构建完全由服务器驱动的实时活动内容。我们已经在应用程序中与实时活动(Live Activity)重叠的一些屏幕上使用了 SDUI 框架,因此重用基本模型和熟悉的模式有助于我们更快地前进。


实时活动(Live Activities)的主要 限制 来自内容更新允许的最大有效负载的大小,即 4KB。在 Lyft 的案例中,这需要调整他们的 SDUI 模型,并使用 protobuf 来进一步减少有效负载大小中的一些字节。


基于这种方法,Lyft 的 iOS 团队创建了多个与用户交互的组件,包括一个 RichText 组件,该组件能够呈现格式化的文本以及图像或计时器,以及一个进度条,用于向乘客显示 Lyft 汽车的近似速度。


此外,他们扩展了解决方案,以支持远程图像的显示,以便在匹配骑手后立即显示司机的个人资料图像和车辆图像。此任务要求使用 应用程序组(App Groups) 在应用程序和实现实时活动(Live activity)的扩展程序之间共享文件。即便如此,Lyft 的工程师还是找不到:


一种可靠且快速地同时显示两个图像(司机图像和汽车图像)的方式。我们一致认为,首先从用户体验(UX)的角度来看,司机的个人资料图像更为重要,并且我们可以通过将 base64 图像数据直接发送到 APN 更新有效载荷中来毫无延迟地显示它。


另一个限制来自于这样一个事实,即图像只能在应用程序处于活动状态或处于后台状态并有足够的后台处理时间时才能下载。


Husar 表示,总的来说,无论复杂程度如何,实时活动所采用的解决方案都是成功的,并且能够提升数百万用户的用户体验。


关于 Lyft 工程师如何在他们的应用程序中利用实时活动(Live Activities)的详细信息可以参考这里,所以如果你对此感兴趣,请不要错过原文。


原文链接:https://www.infoq.com/news/2024/04/lyft-live-activities-ios/


声明:本文为 InfoQ 翻译,未经许可禁止转载。

2024-05-05 08:006118

评论

发布
暂无评论
发现更多内容

教学资源库专业知识图谱:用智能关联让知识“连得上、找得准、学得透”

上海拔俗

即时融合提速,信心激活市场——2025年“双11”大促全周期观察

易观分析

善用NJet能力,优化你的数据库访问体验

通明湖

EMR Serverless Stella 1.0 技术分享:StarRocks企业级版本内核重大突破

阿里云大数据AI技术

阿里云 OLAP LakeHouse StarRocks Stella

深陷 Sqoop+Canal 困境?中控技术用 SeaTunnel 打造高效数据采集破局方案

白鲸开源

大数据 sqoop 开源 Apache SeaTunnel 中控技术

AI 健康管理系统:用智能守护让健康管理“看得见、管得住、防得早”

上海拔俗

绥化市等保测评适用企业范围与核心要求

等保测评

网络安全 信息安全 数据安全 黑龙江等保测评 哈尔滨等保测评

企业级 VS 个人级:智能问数的“集团军”与“单兵作战”的差异解析

Aloudata

agent ChatBI 智能问数 智能归因 智能报告

不只做语音,ElevenLabs 推出图像和视频生成平台;博通推出语音 AI 芯片,实现端侧 TTS 和实时翻译丨日报

RTE开发者社区

2025智能装备、车辆工程与自动化控制国际学术会议(ICEVA 2025)

搞科研的小刘

车辆检测

多模一库——架构简化,能力翻倍

KaiwuDB

数据库 KaiwuDB 分布式多模数据库

广汽昊铂首获时速120公里L3高速测试牌照,高阶智驾迈入实用化新阶段

科技汇

医学大模型 AI 智能医疗服务平台:用专业智能让优质医疗“触手可及、精准可靠、温暖可感”

上海拔俗

软件项目管理文档

金陵老街

项目管理 项目计划 软件管理

开发加油站丨游戏开发者能力速递

荣耀开发者服务平台

荣耀开发者服务平台 荣耀HONOR 荣耀游戏中心 游戏联运

开发加油站丨应用隐私高频问题及自检指南 (第三期)

荣耀开发者服务平台

信息安全 荣耀开发者服务平台 荣耀应用市场 应用隐私合规

绥化市二级等保测评周期:国家规定与地方执行解析

等保测评

网络安全 信息安全 数据安全 黑龙江等保测评 哈尔滨等保测评

石油天然气行业OT/ICS安全:守护全球经济命脉的关键防线

qife122

工业控制系统 关键基础设施

在 RTE2025 大会,我看到了 AI 语音如何让机器学会「与人相处」丨社区来稿

RTE开发者社区

(四)收官篇!从分层架构到数据湖仓架构系列:数据服务层和数据应用层及湖仓技术趋势小结

白鲸开源

大数据 开源 白鲸开源 数据湖仓

百倍启动加速,大规模 Agent 部署和运维的捷径是什么?

阿里巴巴云原生

阿里云 Serverless 云原生 函数计算FC

绥化市三级等保网络安全核心注意事项

等保测评

网络安全 信息安全 数据安全 黑龙江等保测评 哈尔滨等保测评

腾讯云工具指南:25腾讯全球数字生态大会特辑

ToB行业头条

日志搜索与取证分析工具

运维有小邓

日志分析 日志监控 日志管理 日志审计

告别查询超时!SLS物化视图的核心原理与使用场景,开发者必看!

阿里巴巴云原生

阿里云 云原生 日志服务

【报名启动】ITCP联盟第五届技术大会—AI基建专场

Qunar技术沙龙

人工智能 AI 互联网 技术大会 提效

分享一名海外独立开发者的 AI 编程工作流

Baihai IDP

程序员 AI LLM AI编程 氛围编程

财务机器人怎么选?2025年国内主流厂商全解析

Techinsight

为PDP-11/44安装84MB硬盘的复古计算实践

qife122

PDP-11 硬盘安装

阿里云可观测 2025 年 10 月产品动态

阿里巴巴云原生

阿里云 云原生 可观测 产品动态

Lyft 如何利用 iOS 实时活动来提升用户体验_软件工程_Sergio De Simone_InfoQ精选文章