Tencent shared its experience in the development of WeChat Hongmeng version: it took less than a year to complete the 14-year road of WeChat
Tencent's WeChat development team on HarmonyOS Next development experiences over the last 11 months
It has been reported today on January 9 that Tencent's "Goose Factory Blackboard Newspaper" public account on Chinese social media, Weibo, posted today about the development process of the native WeChat HarmonyOS Next version, saying: "Standing on January 9, the official version of the release, maybe all this can be said lightly: the show must go on." But in the past 295 days, our experience is worth recording and sharing with users and friends who care about WeChat Hongmeng. ”
The full text of the attachment is as follows:
Until now, the five words "WeChat Hongmeng Edition" are still given too much meaning.
It's a product, and it's not just a product. The essence of developing it is to make two complex systems that are advancing at high speed and influencing each other run in and familiar with each other, like performing an in-flight refueling mission.
No matter how the outside world evaluates and spurs, this product itself still needs the R&D team to type out one key at a time, from the kernel, to the architecture, to the internal test, to the public beta, and then to round after round of debug, they have to complete the 14-year road of WeChat in less than a year.
Looking back at the products made by the goose factory, there may never have been one that has been stared at under a magnifying glass like this. Every time it is put on the shelves, every bug, and even every milestone, almost all of them are scheduled to be hot searches on the same day.
Standing on January 9, when the official version was released, perhaps all this can be said lightly: the show must go on. But in the past 295 days, our experience is worth recording and sharing with users and friends who care about WeChat Hongmeng.
March 2024, assembled
The goose factory assigned a team that had been in charge of WeChat development since the Symbian period to lead the WeChat Hongmeng version. From Symbian to smart watches, car machines, and WeChat on Linux PCs, the team is known internally for being good at working in different environments and languages.
It is also important to note that thanks to the R&D work of WeChat on the smart watch side, the two teams of WeChat and Huawei are old acquaintances, which also makes the docking between the two sides smoother and closer. From March to April, the two sides learned the R&D framework of the HarmonyOS system through pull-through meetings and sharing sessions, and organized technical discussions from time to time.
It is clear to both sides that this is not a skirmish that can be resolved in three days and two nights, but a protracted corps-level campaign. Before the first line of code is knocked down, there is still a lot of work to prepare.
April 2024, Infrastructure
Thousands of high-rise buildings rise from the ground, infrastructure is the most important first step.
To engage in infrastructure, "three links and one level" (electricity / access / water / land leveling) is the basic requirement, enterprising, you can do "five links and one level" (to join communication / sewage), and further, there are "seven links and one level" (to add ventilation / cable TV), and even "ten links and one level" (to join broadband / railway / heating). The more you get through, the more conducive it is to later expansion and long-term development.
After a long period of polishing on various terminals such as Symbian, mobile phones, watches, etc., the team has accumulated a set of cross-platform kernels called Alita. This also laid the foundation for the infrastructure of the Hongmeng version of WeChat. The most important thing at this stage is to quickly familiarize yourself with the HarmonyOS system, transplant the basic library, so that the Alita kernel can run on the HarmonyOS system, and communicate with Huawei while verifying and promoting.
May 2024, Architecture
The next test is architectural capabilities. The development team needs to design the architecture of the HarmonyOS WeChat client and write the documentation of each module to support the efficient development of each business after entering the market.
The difficulty of this step lies in fully predicting the complex decoupling between services, which not only reduces the dependency between services, but also improves the overall stability and high scalability, which is a typical "I want it all" problem.
This is like building a city from scratch, and it takes a great forward-looking perspective to estimate the population size, traffic conditions, living demand, industrial structure, business development and other factors of this megacity in 100 years, and to balance the relationship between these factors in advance.
The technical team continues to shake people, and recruitment is also moving forward quickly. In the TAPD (Tencent Agile Product Development Platform) flow chart, their first goal is to make a basic version to ensure that users can achieve the most basic and important functions such as sending and receiving messages and voice calls.
In June 2024, run-in
Entered the real hand rubbing session. Flutter (a cross-platform application development framework), LiteApp (a cross-platform development framework designed for mobile), etc., are the key jobs at this stage.
For this "Chinese New Year's Eve dinner", the technical guys cut vegetables and cook rice in the kitchen, and went to the living room to call all parties to make tea and pour water, so that basic capabilities such as payment and VoIP (voice call technology) came to the table one after another.
In addition to close internal and external technical communication, the WeChat and Huawei teams have maintained mutual respect for each other's technical standards. For example, on Android, the entire album permission is required, which means that the app can access all of the user's photos. In order to protect user privacy, WeChat adopts the Picker control method, and the display and selection logic of the album photos are provided by the Picker control, and WeChat can only read the photos selected by the user.
The first milestone, the bug came as promised
By June 21, the team had the first internal experience version ready, including messaging and calling. Compared to WeChat 1.0 version for iOS and Android released on January 21, 2011, there are more voice messages to be sent.
You may disagree: after so long, you have built this rough house?
In fact, the development idea contained here is to verify the principle of minimum usability, which is essentially the acceptance of the results of the first phase of research on the HarmonyOS language and system. The important thing is to practice the basic skills well, so as to lay a good foundation for the subsequent branching and scattering.
But even such a common version has a flashback bug, and in the end, it was found out that it was the underlying API problem of the system: the same code logic works on iOS and Android, but it doesn't work on HarmonyOS. The teams on both sides racked their brains for this, paid the tuition fees for two weeks, and finally relied on a certain technical brother to come up with it.
This bug was also like a final exam, and after this battle, the development went into a fast pace.
For example, the development of Mini Programs involves the connection with the payment function, and the payment ability needs to be connected with the basic conversation function. On the premise of completing the infrastructure, the foundation, payment, and small programs ...... The business modules that can enter the market have entered the market one after another. A common goal is to make a new version on October 8th, the day of the HarmonyOS open beta. In this version, new functions such as WeChat payment and Moments will be added.
October 8, 2024: Like you to come
On October 8th, the WeChat HarmonyOS native version opened the internal test invitation, and the early version includes basic social communication audio and video calls, Moments, QR code receipt/payment of WeChat Pay and other functions.
The start of the internal test means that WeChat, like all other third-party apps adapted to the native HarmonyOS, has embarked on a trilogy of third-party software development of the HarmonyOS system, from internal testing to application early adopter to public beta.
Why a limited closed beta instead of opening it up for download in one go?
On the new platform, it is a great challenge to support a large number of users, high concurrent communication requirements, and at the same time involve multiple large functional modules such as payment, mini programs, and videos, as well as to meet the stability of extremely high-frequency use.
Therefore, using the internal testing → to find bugs→ fix bugs→ and increase the internal testing method is a way that is more in line with the laws of software development.
After 4 days of intense testing and debugging, a number of functions, including WeChat Pay, were merged into the major version after a rigorous testing process, and on October 12, the WeChat Hongmeng native version officially began public beta.
October ~ November 2024: This can meet the gray industry
During the OBT scale-up, was the actual number of logins less than one-tenth of the total number of logins?
Someone on a certain platform openly sells test places?
A series of episodes broke the original rhythm of volume, and after a joint investigation by both parties, it was found that someone took the installation package to the second-hand platform for profit. After the app store improves the mechanism, fill the loopholes.
The installation package can be sold, which can be called a strong stroke in the history of domestic software development.
WeChat Hongmeng version has launched 20,000 test places in the early trial area, but the background shows that the login data has been low, and we found that because someone used a script to grab a place, it triggered the security mechanism of the app store, and at the same time disrupted the counting logic of the app store, resulting in about 90% of the volume being intercepted, and only about 10% of the users who actually downloaded it in the end.
It's another big stroke......
How to make users experience the beta version of WeChat as much as possible?
On November 6, Huawei significantly expanded the number of test places in the WeChat HarmonyOS Edition, and WeChat once again invited users to participate in the internal testing test in batches and in an orderly manner to jointly improve the various experiences of the new version.
After continuously collecting user feedback and going through several iterations, the current version can already use functions such as video accounts, chat references, and file sending, and all HarmonyOS users can also download them directly, and more functions are being launched.
January 9, 2025: More than WeChat
After absorbing the feedback from the majority of users and multiple rounds of debugging, the Hongmeng version of WeChat successfully ended the public beta, and the official version was launched on January 9. In addition to stable downloads and uses of WeChat, you can also use apps such as QQ, Tencent Video, Tencent News, and QQ Music.
Since this year, more than 20 of Tencent's products have been adapted to the HarmonyOS system through agile development, and more Tencent product adaptations are on the way.
An episode that happened on October 29, 2024, to some extent, can reflect the work and collaboration process of the WeChat Hongmeng development team.
At 19:20, the WeChat payment team of the project team found that a small number of users had a bug in the transfer entrance of the latest trial version of WeChat, which was about to be put on the shelves, and there was no response after clicking.
At 20:15, the customer service team synchronized the background customer complaints.
At 20:57, the WeChat payment team preliminarily positioned that the problematic code was caused by today's merger, which is suspected to be a problem with LiteApp (a cross-terminal framework, WeChat transfer is the first function of Hongmeng to use this framework).
At 21:31, we found that in some extreme cases, the system prompted that the file cache write permission of LiteApp was insufficient, and contacted the Huawei technical team to locate it together.
At 21:47, the payment technology team completed the repair of the latest beta version of WeChat, and submitted the version to the test team after merging.
At 22:32, the payment technology team reviewed the problem and proposed follow-up improvement measures.
At 22:41, the WeChat basic technical team submitted the new version of the beta package to the Huawei App Store.
At 22:54, the trial version was submitted to the Huawei App Store for review.
At 23:30, the latest trial version of WeChat passed the review, put on the trial area, and fixed the transfer problem.
There was once a slogan on the WeChat public platform that was deeply rooted in the hearts of the people: no matter how small an individual is, he has his own brand. Similarly, no matter how small the problem is, it will be expanded by hundreds of millions of dollars on WeChat.
We know that we can never wait for the day of "perfect delivery". Grayscale testing and continuous iteration to improve the product in the interaction with users have always been Tencent's product philosophy.
Thank you WeChat users and HarmonyOS users for always standing with us, 7x24 hours to feedback bugs and put forward optimization suggestions. If new product development is like a football game, I hope you will always be the 12th person on our agile development "team".