腾讯云即时通信 IM

Tencent Cloud Chat

腾讯云即时通信 IM 借助 Flutter 将开发效率提升了 77%

成功指标

77%

开发速度提升

94.6%

代码共享

目标

腾讯云即时通信 IM 是一款即时通信 SDK,包含 UI 组件库和音视频通话模块,旨在帮助客户快速构建应用内聊天模块。他们目前在中国聊天服务市场排名第一,并正在拓展国际市场。

在腾讯云开始使用 Flutter 之前,应用程序开发通常使用每个平台的原生工具进行。这种方法既耗时又复杂,因为开发人员必须学习多种编程语言和工具,并为每个平台维护单独的代码库。此外,由于每个平台都有自己的设计指南和用户界面组件,因此难以确保跨平台的一致性。

为什么选择 Flutter?

为了应对这些挑战,腾讯云开始寻找一个现代、响应式的框架,以帮助客户使用单一代码库为多个平台构建应用程序。在对 Flutter、React Native 和 Lynx 等跨平台框架进行全面评估后,团队选择了 Flutter,因为它具有出色的性能、用户体验、开发效率、强大的社区支持和全面的文档。

此外,Flutter 易于学习的编程语言、可定制的小部件和丰富的动画库,使其成为希望从其他框架转型的开发人员的理想选择,他们可以快速学习并开始构建高质量的 SDK 和应用程序。

他们的解决方案

腾讯云决定使用 Flutter 来构建腾讯云即时通信 IM。Flutter 对自定义小部件和主题的支持,使他们能够创建在不同平台之间保持一致的独特且具有视觉吸引力的用户界面,从而提升用户体验并增加互动。团队利用 Flutter 的热重载功能实时查看代码更改,这加快了开发进程并提高了效率。此外,Flutter 可定制的小部件和丰富的动画库使他们能够快速轻松地创建独特且引人入胜的用户界面。

为了帮助客户将腾讯云即时通信 IM 集成到他们的应用程序中,团队构建了一个Flutter UIKit 组件库,它封装了 Flutter 即时通信 SDK 的所有底层功能。它可以在包括 iOS、Android、macOS、Windows 和 Web 在内的多种平台上使用。最新发布的 2.0 版本包含新的宽屏模式 UI,除了 Linux 之外,兼容所有 Flutter 支持的平台。

腾讯团队非常喜欢 Flutter,因此开始使用它构建其他解决方案,包括用于实时音视频的 TRTC,以及一个游戏内聊天解决方案。腾讯云也开始向客户推荐 Flutter 作为构建应用程序的首选框架。

“我们的团队对 Dart 和 Flutter 非常满意。编码体验更加流畅、高效且高度用户友好,从而带来更简化和令人满意的开发体验。Flutter 提供了无缝且轻松的编码体验,令人非常愉悦。”

- 腾讯云团队

成果

随着 Flutter 的引入,腾讯云得以通过提供一个可用于为多个平台构建应用程序的单一代码库,从而简化应用开发。这不仅减少了开发时间和复杂性,还确保了自身项目和客户项目在跨平台方面的一致性。结果,腾讯云收到的咨询请求更少,成本降低,并实现了更快的上市时间。他们的整体收入也显著增长,增长率约为 34%。

Flutter 也为腾讯云的客户带来了显著价值。客户 Ourschool 成功将人力减少了 38%,并将开发效率提升了 47%。根据他们的在线监控系统,他们的 Flutter 应用程序稳定性超过 99.99%,Bug 率降低了约 30%。另一位客户 FacePro 仅用 2 名开发人员就完成了以前需要 5-6 名开发人员才能完成的工作,同时将开发成本降低了 70%,人力降低了 46%,开发周期缩短了 50% 以上。Flutter 还将腾讯云即时通信 IM 的开发效率提升了 77%。

腾讯云还协助将 Flutter 的官方文档从英文翻译成中文,并为 Flutter 社区做出了多项贡献。其中包括一个帮助用户创建多语言界面的国际化工具,以及一个基于代码注释和预配置规则的文档自动生成系统。这两个工具都将很快开源。