Reflectly 利用人工智能帮助用户梳理和反思日常思绪与问题。Reflectly 不采用一刀切的日记记录方法,而是为每位用户提供个性化的日记体验,鼓励他们经常回访,让心理健康成为日常习惯的一部分。
Reflectly 最初在 iOS 上发布时,用户对 Android 版应用表现出浓厚兴趣。这个小团队面临着支持两个平台并为日益增长的用户群提供快速、一致和精美体验的诸多挑战。鉴于 Reflectly 以其精美的设计和用户体验而自豪,团队显然需要找到一个新解决方案。
他们的做法
尽管存在大量问题,Reflectly iOS 应用仍在迅速积累用户群。Reflectly 花了六个月时间试图修复现有实现,最终决定放弃整个代码库,从头开始。
最初,最安全的解决方案似乎是构建两个新的原生应用,但只有两名工程师,这种方法根本行不通。“我们无力构建一个单独的 Android 应用,所以我们认真考虑过关闭它,或者放弃它,专注于 iOS 应用,”联合创始人兼首席技术官 Daniel Vestergaard 解释道。
就在那时,团队发现了 Flutter。“在尝试了一段时间 Flutter 后,团队爱上了这个平台的跨平台一致性、近乎即时的有状态热重载、出色的工具和高性能,”首席技术官兼联合创始人 Daniel Vestergaard 说。他还补充说,团队也欣赏 Flutter“简单、易读且文档完善的代码”。
那时,他们决定立即投入。仅仅在 Reflectly 的两位工程师编写第一行 Flutter 代码后 2.5 个月,Reflectly 2.0 就开始同时在 Android 和 iOS 上推出。在这段时间里,他们不仅完全重写了应用,还开发了几个大型新功能,例如他们的整个高级订阅实现和自定义状态管理解决方案。

成果与经验
Reflectly 2.0 收到了来自众多不同 Android 和 iOS 设备用户的积极反馈,其中许多人赞赏该应用新颖时尚的外观和设计。在用 Flutter 重新发布应用后,Android 版 Reflectly 应用的评分从 Play 商店的平均 3.2 星跃升至平均 4.3 星。它还被列入 Apple 的“我们喜爱的新应用”名单。团队认为最初的低评分主要归因于崩溃、卡顿和美学不一致,而这些问题他们通过 Flutter 得以解决。“总而言之,我们很大程度上将 [Flutter 发布] 后平均评分的提高以及数十万(甚至可能数百万)Android 下载量归因于 Flutter,因为它让我们能够保留应用,稳定它,并实现与 iOS 的功能对等,”Vestergaard 说。
由于 Flutter 直接绘制每个像素,团队无需担心平台之间的渲染差异。他们现在可以维护一个共同的代码库,但在适当的时候仍然可以编写 iOS 和 Android 特定的 UI。现在,他们能够将整个开发团队投入到一个高质量的体验上,Reflectly 的 开发时间减少了 50%,使他们能够从每两周发布一次变为每周发布,并同时在两个平台上推出新功能。
关于 Flutter
任何人都可以使用 Flutter 从单一代码库为任何屏幕构建、测试和部署精美的应用。立即开始。