Tinder 利用 Android 架构组件解决了社交约会应用的难题,安卓怎么安装tinderTinder 利用 Android 架构组件解决了社交约会应用的难题Tinder是一款风靡全球的交友应用。它以改变人们的约会方式而闻名,用户只需向右滑动即可与他人建立联系和聊天。每天有超过2600万用户在Tinder上配对成为......
Tinder是一款风靡全球的交友应用。它以改变人们的约会方式而闻名,用户只需向右滑动即可与他人建立联系和聊天。每天有超过2600万用户在Tinder上配对成为好友,自2012年正式推出以来,在Tinder上成功配对的用户超过200亿。
该公司需要根据用户需求快速扩展此应用,但他们的数据库实施从早期开始就成为遗留问题,这使得扩展工作变得越来越复杂。此外,他们还拥有一个包含大量视图的架构来降低生命周期的复杂性,但需要知道哪些生命周期事件是特定于相应Activity的事件。他们缺少一致的框架来处理任务(例如将Cursor编组到网域对象中,执行数据库迁移或以一致方式执行查询)。
策略
Tinder利用Android架构组件来寻求代码升级解决方案。他们使用Lifecycle让View观察其宿主Activity的生命周期,同时使用LifecycleObserver简化分散式插件架构并防止Presenter、Activity和View出现膨胀。Room持久性库提供了一种用于定义、管理和查询其本地数据库的统包方法。
Tinder开发团队仅在两周内就能够实现LifecycleObserver和插件架构,而针对内部Ads SDK无缝实现Room仅用了两天时间。
“我们不再需要投入大量时间在插件或视图内管理Activity生命周期。”Tinder的Android主管Andy Lawton说。“Room经过精心设计,让我们的持久性层易于实施。将Room用于内部Ads SDK后,在前期开发中就可能节省了一周的时间。”
结果
Tinder对其Ads SDK的结果非常满意,因此他们决定将整个数据库层迁移到Room。测试很简单,Room为防范忘记取消注册而提供的保护措施减少了内存泄漏。此外,Android架构组件还有助于减少内存占用。
“Android架构组件提供的解决方法可以解决开发者在各种不同开发规模下面临的诸多难题。”Lawton说。“通过使用生命周期感知型组件,Tinder成功地提高了开发者的工作效率、改进了可测试性和模块化设计,同时有助于实现视图优先的架构。采用Room后,便无需使用管理SQLite的其他解决方案,只需通过常规的配置即可实现数据库管理和查询。”
指标
通过LifecycleObserver/插件架构从MainActivity中移除了500多行代码
使用入门
作为Android Jetpack的一部分,Android架构组件面向所有开发者开放。Android架构组件使用入门。
特别声明:以上文章内容仅代表作者本人观点,不代表ESG跨境电商观点或立场。如有关于作品内容、版权或其它问题请于作品发表后的30日内与ESG跨境电商联系。
二维码加载中...
使用微信扫一扫登录
使用账号密码登录
平台顾问
微信扫一扫
马上联系在线顾问
小程序
ESG跨境小程序
手机入驻更便捷
返回顶部