BeautyPlus 应用通过 Android 架构组件提升可读性 15%

BeautyPlus 于 2013 年推出,是全球最受欢迎的照片编辑应用之一,化妆师、摄影师和普通的手机用户都在使用。每月约有 5000 万人使用该应用来编辑和添加滤镜到他们的自拍、照片和视频中。该应用由中国的厦门美图科技有限公司开发,尤其受到自拍爱好者的欢迎,可用于各种用途,从校正肤色和提亮笑容到瘦脸和去除瑕疵,只需简单的拖动和点击即可。

由于该公司会频繁更新应用,因此需要大量的开发者。但是,随着时间的推移,底层架构缺乏统一性和清晰度。快速发展的团队需要一种方法来让协作的开发者了解最新情况,同时简化生命周期管理并解决与刷新异步 UI 相关的问题。

图 1:BeautyPlus 中的照片编辑示例

他们做了什么

Android 架构组件 为开发者提供了必要的工具,使应用代码简洁、稳定,并更容易让新工程师在加入时阅读。

BeautyPlus 开发人员开始使用的组件包括ViewModel,它可以通过活动和片段更新更轻松地处理逻辑。 ViewModel 旨在以尊重其他应用组件生命周期的生命周期感知方式存储和管理与 UI 相关的数据。

他们还利用了LiveData 组件,这是一个可观察的数据持有者类,它也是生命周期感知的,有助于确保 UI 与数据状态匹配。团队发现这些 Android 架构组件易于使用,并且没有遇到任何问题,并且好处很快就显而易见了。

结果

由于 Android 架构组件,BeautyPlus 应用的代码立即精简了 5%,可读性提高了 15%。架构也更加统一,节省了开发人员的时间和精力,并使新开发人员更容易快速上手。此外,内存泄漏减少了,刷新数据变得更容易,开发人员也不必再担心更新异步 UI。

“当我们在 BeautyPlus 中使用 ViewModel 和 LiveData 时,代码变得更加简洁和易读,代码的架构也更加统一,”高级开发经理郑颂银说。“应用的生命周期操作得到了安全管理,稳定性也得到了提高。”

开始使用

Android 架构组件对所有开发者开放。开始使用 Android 架构组件