Tencent RTC Chat: The Chat SDK Solution Endorsed by Google Flutter for Enhanced Efficiency

Tencent RTC-Dev Team
Jan 8, 2024

Goal


Tencent RTC Chat is a Chat SDK, with a UIKit component library and Voice/Video Calls module, designed to help customers quickly build an in-app chat module. 
Before Tencent Cloud started using Flutter, app development was typically done using native tools for each platform. This approach was time-consuming and complex, as developers had to learn multiple programming languages and tools and maintain separate codebases for each platform. It could also be challenging to ensure consistency across platforms, as each platform had its own design guidelines and user interface components.

Why Flutter?


To address these challenges, Tencent Cloud began to search for a modern, reactive framework that could help their customers build apps for multiple platforms with a single codebase. After a thorough evaluation of cross-platform frameworks such as Flutter, React Native, and Lynx, the team chose Flutter for its excellent performance, user experience, development efficiency, robust community support, and comprehensive documentation.


Additionally, Flutter's easy-to-learn programming language, customizable widgets, and rich animation libraries made it an ideal choice for developers who are looking to transfer from other frameworks and want to quickly learn and start building high-quality SDKs and applications.

Their solution


Tencent Cloud decided to use Flutter to build Tencent Cloud Chat. Flutter's support for custom widgets and themes allowed them to create unique and visually appealing user interfaces that are consistent across different platforms, enhancing the user experience and improving engagements. The team used Flutter’s hot reload feature to see their code changes in real time, which sped up the development process and made it more efficient. Additionally, Flutter's customizable widgets and rich animation libraries allowed them to create unique and engaging user interfaces quickly and easily.


To help their customers integrate Tencent Cloud Chat into their apps, the team built a Flutter UIKit component library, which encapsulates all the underlying capabilities of the Flutter Chat SDK. It can be used on a variety of platforms including iOS, Android, macOS, Windows, and web. The recently released version 2.0 includes a new wide-screen mode UI and is compatible with all Flutter-supported platforms except Linux.

The Tencent team enjoyed Flutter so much that they began to build other solutions with it, including Tencent RTC for real-time audio and video, as well as an in-game chat solution.

Tencent Cloud also began recommending Flutter to their customers as the preferred framework for building their applications.
“Our team is very pleased with Dart and Flutter. The coding experience was much smoother, more efficient, and highly user-friendly, allowing for a more streamlined and gratifying development experience. Flutter has been immensely pleasurable as it offers seamless and hassle-free coding.” - Tencent Cloud Team

Results


With the introduction of Flutter, Tencent Cloud was able to streamline app development by providing a single codebase that could be used to build apps for multiple platforms. This not only reduced development time and complexity, it also ensured consistency across platforms for both their own projects and those of their customers. As a result, Tencent Cloud received fewer consultation requests, saw decreased costs, and enjoyed a faster time-to-market. They have also seen a significant increase in overall revenue, with a growth rate of around 34%.


Flutter has also brought significant value to Tencent Cloud’s customers. One client, Ourschool, was able to reduce manpower by 38% and improved development efficiency by 47%. According to their online monitoring system, their Flutter application is more than 99.99% stable, and bug rates decreased by approximately 30%. Another client, FacePro, was able to achieve with 2 developers what previously required 5-6, while reducing development costs by 70%, manpower by 46%, and the development cycle by more than 50%. Flutter also increased the development efficiency of Tencent Cloud Chat by 77%.


Tencent Cloud also helped translate Flutter's official documentation from English to Chinese and made several contributions to the Flutter community. These included a language internationalization tool that helps users create multi-language interfaces and a document auto-generation system based on the comments in the code and pre-configured rules. Both tools will be open-sourced soon.

If you have any questions or need assistance, our support team is always ready to help. Please feel free to contact us, or join us on Discord.