kaiyun.com脑子里齐在思这个 bug-Kaiyun· (开云)官方网站 登录入口
发布日期:2025-01-30 05:31 点击次数:173

IT 之家 1 月 9 日音信,微信纯血鸿蒙版 App 当天庄重登陆手机端华为旁边阛阓(App Gallery),版块号为 1.0.3.42。

腾讯 WXG(微信奇迹群)职工 @客村小蒋 当天发布长文总结了微信纯血鸿蒙版 App 上架历程,IT 之家附原文如下:
今天,微信鸿蒙原生版庄重上架旁边商店了。
有些话,思说一说,给这段时分作念一个总结。
当今庄重零帧起手,也即是要讲就讲最舛误的,不要前边各式铺垫,终末夹带黑货。
但身份和视角的问题,我今天要说的,可能齐是黑货。
负责鸿蒙微信开荒的老迈,是老广研,过去开荒微信 1.0 的那批成员中的一位。
也即是说,他在鹅厂的时分,比微信的历史齐久。
过去的 1.0,老迈负责搞塞班(Symbian)微信,也曾的诺基亚,从品牌到份额,应该是远超今天的苹果的。
但看成一个怒放度远不如当今的 iOS 和 Android 的"原始操作系统",在塞班上作念东西,是刀耕火种。
老迈带着团队肯钻研,硬在塞班上手搓出了一又友圈、公众号。
莫得思到,诺基亚这么的巨东谈主的轰然倒塌,实足不以东谈主的分解为转机。
之后老迈带着团队作念智高腕表、车机,包括最早的 Linux PC 端的微信。
不同品牌、不同终局,比手机更碎屑化的生态,荒谬需要一个跨平台的内核,把最紧迫、最基础的材干搭成可复用的基建。
刚好和团队一齐看了其时热映的《阿丽塔:斗争天神》,老迈说咱们刚立项的跨平台内核,就叫"阿丽塔内核"吧。
阿丽塔,又帅又能打。
阿丽塔内核,也成了微信跨平台开荒的基建。
微信鸿蒙版,也受益于此。
这么的经验,其实冥冥中有注定。
2024 年 3 月 21 日,一份通俗又庄重的奉告来了,全球一经决定了,鸿蒙微信,你牵头来搞。
1、搭基建:第一天开动,鸿蒙微信即是按照"三峡大坝"建的
"原生鸿蒙(HarmonyOS NEXT)实足是一套新的时候框架,编程语言是专有的 ArkTS 语言,这意味着通盘的 App 齐要实足重写。"
这句话,我时常会跟不同的一又友提及。
不外,对微信团队来说,学习新的编程语言,可能是通盘这个词适配使命中,最不算艰巨的事情之一。
在一个全新的平台上,作念一款要相沿海量用户、高并发的通信需求,同期有支付、小枢纽、视频平台等多个大功能模块的旁边,还要自便极高频使用下的踏实性,是更大的挑战。
这亦然我全篇最大的黑货,我可能会反复拿起。
也有东谈主说,原生鸿蒙在 2024 年 10 月才开动公测,如何就海量用户了?
我铭刻原生鸿蒙有一次发布会用的主题叫,"待到山花烂漫时",信念的力量,很强劲。
微信的时候团队,依靠的则是对时候的狂热信念。
iOS、安卓微信多年的捶打,他们早已把一些信念根植于团队中:比如大系统小作念、让一切可膨胀、必须有基础组件、灰度发布、邃密监控、迅速反映,一切齐是保证系统在踏实的前提下,能够敏捷反映居品需求。
微信原生鸿蒙团队,刚开动组建,就有一个堪比 iOS、安卓客户端开荒团队的限度。
"今天是这些东谈主作念鸿蒙微信,几年以后,还应该是这些东谈主在作念。"老迈的 leader,另一个我荒谬发扬的时候老迈说到。
2、搭基建,修 bug,是一种修行
阿丽塔内核,在开荒鸿蒙微信的流程中,居功至伟。
但这仅仅基建的第一步。
万丈高楼,第一天就要把地基打得实足深、实足牢。
第二步,还需要想象好鸿蒙微信客户端的架构、编写好各个模块的文档,让后续第二三阶段的业务进场后能够高效进行开荒。
这一步极其有难度,不仅要快速自便业务诉求,还需要有计划业务之间的解耦,并具备耐久的高可膨胀性。
也即是说,让微信各个相互依存的模块,又在时候上尽量减少对相互的依赖,幸免因某个模块的故障影响其他功能。同期,有一个膨胀性极高的框架。
亦然这个时分,老迈带着团队开展了频率极高的对内对外疏通。
对外,和华为的时候团队进行了频率极高的线上线下交流;对内,push 各个业务团队将各自的基础库移植进来。
从搭基建一直到今天,修 bug 齐是一个恒久陪伴开荒流程的动作。
有一个经典的气死枢纽员的问题,"枢纽员为什么要一直写 bug ,不成一次性写好吗?"
枢纽员们也进行了各式"否认",从类比答题、花匠和杂草、仙葩顾主买肉夹馍,到赌气唯有居品司理深切不加新功能就不会有 bug。
其实中枢就几个点:需求时常会变、系统太复杂、不测情况多、时分和本钱有限,以及"东谈主",老是会出错的。
鸿蒙遇上微信,这么的问题就会加倍,两个高速前进、相互影响的复杂系统,让修 bug 就像一场修行。
6 月,在适配鸿蒙 NEXT.0.0.6x 的某个版块流程中,出现了一个时常导致开荒中的微信闪退的 bug。
两个团队一齐排查了一周多齐毫无进展,老迈睡觉时,脑子里齐在思这个 bug。
终末甚而是靠灵光一闪,从系统的一个底层 API 中发现了问题:相似的代码逻辑,在 iOS 上和安卓上齐没问题,但在鸿蒙上就会碰到问题。
发现问题后,就能快速措置了。
几个月后,我第一次据说这段经历时,的确回忆起了小时候看的爱迪生教练灯丝的故事。
3、邀请内测、上架尝鲜
2024 年的十一假期,鸿蒙微信开荒团队的全部东谈主齐加了七天班。
10 月 8 日,也即是原生鸿蒙庄重公测的这天,鸿蒙微信也开动邀请内测。
10 月 12 日,微信测试版上架鸿蒙旁边商店的"旁边尝鲜"专区,用户不错抢先下载测试。
但若是从一个平素鸿蒙用户的角度,从 10 月 12 日到 11 月 6 日的不到一个月的时分里,因为要"抢"微信,可能是最可怜的日子。
有几个问题,一直萦绕在这段时分,前前后后作念过一些诠释注解,此次放在一齐讲一讲,尽量让全球了解善始善终。
1)为什么要用限量内测神情,抗击直给通盘东谈主下载?
回到我来源的黑货:在一个全新的平台上,作念一款要相沿海量用户、高并发的通信需求,同期有支付、小枢纽、视频平台等多个大功能模块的旁边,还要自便极高频使用下的踏实性,是很大的挑战。
是以,用内测 → 找 bug → 修 bug → 加大内测的神情,是一个更安妥软件开荒顺次的神情。
在原生鸿蒙上,许多 App 也接受了访佛的神情。
2)为什么不成公布一个固定的时分,要不定时地放,甚而巧合候夜深放?
再回来下前边的一个黑货:两个高速前进、相互影响的复杂系统,让路发就像一场修行。
举一个我深度围不雅的例子:
某天晚上的 19:20 傍边,样子组微信支付团队发现,行将要上架的最新尝鲜版的微信,小部分用户的转账进口出现 bug,点击后无反应。
微信支付团队和样子组基础时候团队开动同步排查问题。
20:15,客服团队同步后台客诉情况。
20:57,微信支付团队初步定位,有问题的代码是当天合入导致的,疑似是 LiteApp(跨端的框架,微信转账是鸿蒙第一个使用这个框架的功能)的问题。
21:31,进一步定位到问题,在某些相比顶点的情况下,LiteApp 的文献缓存写入被系统辅导权限不及,联系华为时候团队一齐定位。
21:47,支付时候团队完成问题开荒,合入后,提交版块给测试团队。
22:32,支付时候团队复商议题,提倡后续创新措施:测试、开荒严谨度擢升。
22:41,微信基础时候团队向华为旁边商店提审新版块内测包。
22:54,向华为旁边商店提审尝鲜版。
23:30,最新尝鲜版微信通过审核,上架尝鲜专区,转账问题开荒。
3)为什么那段时分,一边抢不到,一边有东谈主在二手平台上卖装配包?
看到售卖装配包的聚合,咱们也很惧怕,坐窝找了华为一齐排查原因,通俗来说,是因为旁边商店莫得作念严格的鉴权,有东谈主用时候技能从商店里握了装配包来装配,甚而教这种办法营利。很快,华为也开荒措置了这个问题。
4)为什么老是顷刻间就抢光?
有一段时分,试验登录微信的限额,远远低于放量的限额。再次排查发现,有东谈主用访佛抢票软件的"剧本",去刷旁边商店的放量,也因此触发了商店的安全机制,阻拦了大部分的需求。
5)那为什么不成提前收罗欣喜参加内测的用户名单,给他们定向发测试版就好了,其他东谈主用踏实版,不就毋庸一次次地抢了?
这如实亦然咱们更但愿的神情。全球"抢"微信,更试验的原因是需要用微信。
但其时有几个客不雅的斥逐条款:一个踏实的、必须的基础功能齐具备的版块,需要屡次的迭代;鸿蒙对一个 App 内测限额的上限,有相比大的斥逐,一个新功能踏实性的测试,需要的用户量级要远超于此。
4、"全球的键盘齐被敲冒烟了"
这段时分,我也取得了屌毛的好意思名。
天然,我分解,这更多是厚谊的宣泄。
我不是开荒东谈主员,但从深度围不雅中,能感受到两个团队的不易。
有一次在微博开打趣,"我之前说开荒共事键盘齐敲冒烟了,其实不夸张。从开荒共事的反馈里,我能感受到鸿蒙开荒同学的键盘应该也不好受。"
转天刚好是 10 月 24 日,枢纽员节,华为终局的 CTO 李小龙先生转了这条微博,写到:
今天是 1024 枢纽员节,咱们要问候弘大鸿蒙开荒者一又友们,同期也感谢弘大用户为咱们反馈问题,全球的可贵见地对鸿蒙生态的完善与擢升很有匡助。如 @客村小蒋 所说,尽快发现问题、开荒问题,给弘大用户带来极致体验,是各厂商和鸿蒙的共同方针。构建鸿蒙生态是一个浮泛的任务,即使一经取得了一些进展,但照旧面对着许多挑战。华为与国内上万家生态伙伴、数十万东谈主共同干预,展现了强劲的合营力量。当今每天齐有弥远鸿蒙原生旁边上架,且迭代连忙,有些甚而每天迭代一个版块。两天前 HarmonyOS NEXT 庄重发布,咱们也会和各厂商、弘打开荒者一齐连续戮力,也但愿更多的用户升级、体验,反馈见地
5、踏实版块不限量下载,测试版同步进行
11 月 6 日,经过一个月的高速迭代,基础功能有所完善的踏实版块有了。
和华为团队进行了一个极其高效的线上会议后,内测限额的上限也有了大幅擢升。
收罗欣喜参加内测的用户名单,给他们定向发测试版,其他东谈主用踏实版的有规画,终于可行。
之后即是不时的:新的测试版邀请内测 → 握 bug → 修 bug → 扩大测试 → 更新踏实版 → ……
直到今天的郑再版上线,开荒、居品、测试、生态合营 …… 通盘参与到这个样子里的团队,齐未有一天诬害。
郑再版,是一个新的连续上前的开动。
6、被误会是抒发人的宿命,但不该是建造者的
我的微博简介里蓝本有一句话,叫"制造熵减,尝试戮力舍弃一些误会"。
很装 x。
"熵减"是"熵增"的反义词。啥叫"熵增",我的分解即是寰球是一个巨大的,遏抑从有序向无序滚动的含糊体。
被误会,是任何一个系统或者物体的宿命。
可是,若是遏抑有外力来施加影响,起码是能减缓有序向无序滚动的速率的。
其后求教了我的一又友里,最有文化的一位哈佛博后,他告诉我,"熵减"可能无法制造,更好的说法,梗概是"驱动熵减"。
现实里我天然内向,在网上却是个爱话语的东谈主,尽管被叫成叼毛,但很甘愿应该照旧有一些一又友因为有了更多的了解,有了新的判断。
否则应该不会同期有那么多东谈主叫我靓仔
当今回忆起来爽快许多,但在需要"抢"微信的那段时分里,
我个东谈主被骂的进程,亦然我从来莫得经历过的,
严重的时候,自认内心强劲的我,寝息甚而也受了点影响,
身当其境,看成一个并未试验参与开荒,仅是围不雅的东谈主,
一经有如斯大的情态波动。
我就更思找一个合适的契机,
讲一讲共事开荒鸿蒙微信的一些故事,
给更多的一又友更多的视角。
感谢全球一直以来的陪伴、反馈。
kaiyun.com