現(xiàn)在位置:主頁(yè) > 科技 > 鴻蒙生態(tài)繁榮背后:WPS全面適配HarmonyOS NEXT的故事

鴻蒙生態(tài)繁榮背后:WPS全面適配HarmonyOS NEXT的故事

作者:編輯 ? 時(shí)間:2024-09-12 ? 瀏覽:人次

在今年HDC 大會(huì)上,華為正式發(fā)布HarmonyOS NEXT,并且宣布鴻蒙原生應(yīng)用進(jìn)入全面沖刺階段,5000多個(gè)常用應(yīng)用已全部啟動(dòng)開(kāi)發(fā),其中超過(guò)1500個(gè)應(yīng)用已完成上架。

在這串令人振奮的數(shù)字背后,承載著千千萬(wàn)萬(wàn)個(gè)開(kāi)發(fā)者的熱忱和期待。作為國(guó)內(nèi)最大的辦公軟件之一,WPS 用了八個(gè)月時(shí)間完成了鴻蒙化,成為鴻蒙生態(tài)中的一員。

我們采訪了金山辦公架構(gòu)師覃歡,聽(tīng)他講述WPS完成HarmonyOS NEXT開(kāi)發(fā)適配背后的故事。

圖片 1.png

覃歡在HDC 2024現(xiàn)場(chǎng)

“HarmonyOS版本沒(méi)有一行代碼和安卓版本是重復(fù)的”

第一次正式接觸HarmonyOS,是2022年底,覃歡被突然拉到一個(gè)會(huì)議中,討論WPS要不要鴻蒙原生化?他感覺(jué)有些莫名其妙。

不過(guò)也情有可原。覃歡經(jīng)歷過(guò)WPS體系下的各種架構(gòu)變更,其個(gè)人成長(zhǎng)路線與WPS的快速發(fā)展期高度重合。2012年,覃歡才剛進(jìn)入金山辦公這家公司,便參與基于Qt遷移WPS到多平臺(tái),包括Windows、Linux,隨后又?jǐn)U展到macOS和信創(chuàng)平臺(tái)?!拔覀兡且慌耍s上了WPS重構(gòu)的末班車(chē),經(jīng)歷了體系架構(gòu)變革、多平臺(tái)適配以及處理各種指令集,幾乎全程參與了這些變革?!瘪麣g表示。

答案是肯定的,就跟當(dāng)年擁抱信創(chuàng)一樣。

過(guò)了個(gè)年回來(lái),WPS就開(kāi)始與華為圍繞鴻蒙原生化這件事進(jìn)行了長(zhǎng)期的技術(shù)溝通。“從二月份開(kāi)始,一直到去年的七月份左右,我們經(jīng)歷了七八輪深入的交流,一直在探討WPS在純血鴻蒙系統(tǒng)中的技術(shù)難點(diǎn)?!瘪麣g回憶。

到了年中,WPS團(tuán)隊(duì)突然得知HarmonyOS不再兼容安卓,也就是同年9月發(fā)布的HarmonyOS NEXT計(jì)劃,即鴻蒙原生應(yīng)用全面啟動(dòng)。

一旦HarmonyOS NEXT推出,將開(kāi)啟一扇通往無(wú)限機(jī)遇的大門(mén)。這樣的發(fā)展路徑,或許預(yù)示著操作系統(tǒng)的三分天下。華為與金山辦公雙方的目標(biāo),放在國(guó)家層面、行業(yè)發(fā)展層面、企業(yè)對(duì)市場(chǎng)的預(yù)期層面來(lái)講,都高度一致。

“我們其實(shí)也希望能夠搭載HarmonyOS NEXT這趟快車(chē),迅速加入這一進(jìn)程并共同開(kāi)拓市場(chǎng),掌握一定的市場(chǎng)話語(yǔ)權(quán)?!瘪麣g表示。

為了快速將WPS 鴻蒙化,覃歡等人迅速組建起一支鴻蒙化團(tuán)隊(duì)?!拔覀兂檎{(diào)了大約40多名‘高精尖’技術(shù)人員。只要是在Office領(lǐng)域的高P基本上都被薅完了?!?/p>

圖片 2.png

WPS鴻蒙版界面

團(tuán)隊(duì)成員不僅要對(duì)WPS底層結(jié)構(gòu)尤其內(nèi)核有深入理解,還要具備跨平臺(tái)開(kāi)發(fā)的意識(shí)。此外,要擁有多系統(tǒng)同時(shí)開(kāi)發(fā)的能力,因?yàn)橐紤]將內(nèi)核多端統(tǒng)一。

純血鴻蒙HarmonyOS NEXT完全摒棄了Linux內(nèi)核,原先運(yùn)行安卓應(yīng)用的機(jī)制不存在了,WPS如果不跟著改變,也就無(wú)法在HarmonyOS NEXT運(yùn)行。

只能重寫(xiě)。

為此,覃歡等人將現(xiàn)有的WPS PC內(nèi)核引擎移植到鴻蒙上來(lái),在此基礎(chǔ)上重新編寫(xiě)了上層應(yīng)用程序。為了實(shí)現(xiàn)這一點(diǎn),還構(gòu)建了一個(gè)從內(nèi)核到上層應(yīng)用的框架。與之前的安卓版本相比較,鴻蒙版的WPS完全不一樣?!皼](méi)有一行代碼是重復(fù)的,是完全重寫(xiě)的一套?!瘪麣g強(qiáng)調(diào)。

2023年11月,WPS成功在鴻蒙創(chuàng)新產(chǎn)品上運(yùn)行。緊接著,通過(guò)在內(nèi)核上添加一個(gè)簡(jiǎn)單的Ark層,也在一個(gè)月后實(shí)現(xiàn)了WPS在移動(dòng)設(shè)備上的基本操作,如打開(kāi)文檔。這就是上層 ArkUI,底層 C++的鴻蒙版WPS。

40多條需求,倒逼HarmonyOS IDE 成長(zhǎng)

將鴻蒙創(chuàng)新產(chǎn)品的內(nèi)核跑在移動(dòng)設(shè)備上之后,又面臨了新的問(wèn)題——如何搭建能夠滿足跨棧調(diào)用的功能、性能與穩(wěn)定性的要求?

此前在安卓平臺(tái)上,WPS曾考慮過(guò)C++與Java的互調(diào)方案JNI,但由于性能和穩(wěn)定性不達(dá)標(biāo),最終該方案被否決。而在iOS平臺(tái)上,由于OC和C++共占同一調(diào)用棧,這個(gè)問(wèn)題得到了較好的解決。

如今在鴻蒙移動(dòng)端,上層是Ark運(yùn)行時(shí),底層是C++,這就必然涉及到類(lèi)似于JNI的調(diào)用問(wèn)題,比如在大量數(shù)據(jù)的序列化和反序列化以及跨進(jìn)程調(diào)度通信方面。

“我們是一群被Visual Studio養(yǎng)得非常挑剔的一群人?!瘪麣g說(shuō),WPS 的開(kāi)發(fā)人員絕大多數(shù)都是使用市場(chǎng)上成熟的工具鏈體系,當(dāng)轉(zhuǎn)向HarmonyOS開(kāi)發(fā)時(shí),遇到了前所未有的挑戰(zhàn)?!癏armonyOS的調(diào)試工具和開(kāi)發(fā)環(huán)境——DevEco Studio對(duì)于我們來(lái)說(shuō)是一個(gè)巨大的考驗(yàn)。面對(duì)跨語(yǔ)言調(diào)試、自定義變量觀察、多線程問(wèn)題分析、內(nèi)存泄漏等復(fù)雜難題時(shí),DevEco是否能夠滿足我們的能力要求?”

特別是當(dāng)需要從JS穿透到C++時(shí),由于缺乏有效的跨語(yǔ)言調(diào)試能力,類(lèi)似CMD這樣的工具,限制了他們?cè)趩?wèn)題分析和處理上的手段,就只能依賴(lài)于日志和時(shí)間戳來(lái)進(jìn)行問(wèn)題分析,調(diào)試工作變得異常復(fù)雜。

尤其是在遠(yuǎn)程調(diào)試和交叉編譯方面,WPS對(duì)熟練度和性能要求都很高,但現(xiàn)有的工具無(wú)法滿足這些需求。WPS的代碼量龐大,如何高效地將編譯緩存推送到設(shè)備上成為了一個(gè)難題。

“每次修改代碼后,都需要等待幾分鐘才能進(jìn)行調(diào)試,這對(duì)我們的工作效率造成了嚴(yán)重影響。我們嘗試了各種方法來(lái)提高編譯、調(diào)試速度以及問(wèn)題驗(yàn)證效率?!?/p>

在此過(guò)程中,華為提供了一系列技術(shù)支持,比如對(duì)可能出現(xiàn)的邏輯錯(cuò)誤和異常情況的分析,以及如何在這些情況下保持框架的穩(wěn)定性,使得框架在安全性方面得到良好的保障,從而避免了異常崩潰crash的風(fēng)險(xiǎn),增強(qiáng)了整個(gè)系統(tǒng)的健壯性和可靠性。

最終通過(guò)內(nèi)部與華為技術(shù)團(tuán)隊(duì)的溝通,WPS 搭建了一套支持同步amp;異步跨語(yǔ)言的調(diào)度框架,基本滿足了 WPS 的業(yè)務(wù)訴求。

事實(shí)上,鴻蒙化編譯還沒(méi)正式開(kāi)始前,WPS 在與華為的正式交流中,第一個(gè)討論的議題就是開(kāi)發(fā)調(diào)試工具是否準(zhǔn)備好,是否能夠支撐如此大量代碼的編譯與調(diào)試工作?在開(kāi)發(fā)初期,WPS 針對(duì) HarmonyOS的專(zhuān)用開(kāi)發(fā)調(diào)測(cè)工具DevEco 提的需求就多達(dá) 25 條。

在與華為技術(shù)團(tuán)隊(duì)早期交流中,覃歡曾表示,如果WPS的開(kāi)發(fā)環(huán)境能夠與DevEco很好地兼容或適配,那么之后,幾乎所有應(yīng)用在鴻蒙化過(guò)程的開(kāi)發(fā)需求,DevEco都能滿足。

隨著需求一一得到落實(shí),不僅極大地提升了開(kāi)發(fā)效率,也極大地增強(qiáng)了開(kāi)發(fā)者對(duì)鴻蒙生態(tài)的信心。覃歡及其團(tuán)隊(duì)見(jiàn)證了DevEco從一個(gè)潛力無(wú)限的IDE成長(zhǎng)為一個(gè)能夠穩(wěn)定支撐大型項(xiàng)目開(kāi)發(fā)的強(qiáng)大工具。

圖片 3.png

DevEco多場(chǎng)景深度調(diào)優(yōu)

除了在技術(shù)層面提供支持,華為還在戰(zhàn)略層面,快速推進(jìn)第三方庫(kù)的鴻蒙化進(jìn)程。

WPS Office是一個(gè)辦公軟件套裝,它在開(kāi)發(fā)過(guò)程中依賴(lài)了多個(gè)三方庫(kù)來(lái)提供額外的功能和增強(qiáng)的性能。但是,WPS 也只是第三方庫(kù)的使用者,對(duì)于三方庫(kù)的駕馭能力并不足。“推動(dòng)第三方庫(kù)鴻蒙化,于我們而言是一件精力消耗非常大的事情。WPS 依賴(lài)的三方庫(kù)有100多個(gè),但是精通的卻只有十多個(gè)。”覃歡表示。

在鴻蒙生態(tài)這艘船上,華為無(wú)疑是掌舵者。在推動(dòng)第三方庫(kù)適配鴻蒙系統(tǒng)的過(guò)程中,華為扮演了關(guān)鍵角色,提供了系統(tǒng)層面的適配與支持,大幅節(jié)省了開(kāi)發(fā)團(tuán)隊(duì)的研發(fā)時(shí)間,并確保了性能和研發(fā)速度的提升。

“在短短一兩周內(nèi),便實(shí)現(xiàn)了第三方庫(kù)在HarmonyOS上的順利運(yùn)行,加快了WPS向HarmonyOS的遷移進(jìn)程?!瘪麣g總結(jié)道。

在整個(gè)WPS 鴻蒙化的過(guò)程中,覃歡主導(dǎo)完成了4000萬(wàn)行代碼應(yīng)用開(kāi)發(fā),對(duì)HarmonyOS NEXT提出的需求超過(guò)150項(xiàng),對(duì)集成開(kāi)發(fā)環(huán)境IDE提出的需求超過(guò)40項(xiàng),極大地補(bǔ)齊了系統(tǒng)能力——比如窗口、應(yīng)用框架、文件、字體、打印、Dfx等子系統(tǒng)能力和對(duì)大型應(yīng)用的工程化支持能力等。為表彰覃歡突出的技術(shù)貢獻(xiàn),華為開(kāi)發(fā)者大會(huì)HDC 2024為其頒發(fā)了鴻蒙先鋒“卓越技術(shù)貢獻(xiàn)獎(jiǎng)”獎(jiǎng)?wù)隆?/p>

“沒(méi)有什么技術(shù)點(diǎn)在鴻蒙上無(wú)法實(shí)現(xiàn)”

WPS 的系統(tǒng)復(fù)雜性和龐大代碼量,使得 WPS 在系統(tǒng)資源需求上存在特殊性。即使不算三方庫(kù),WPS 也有4000萬(wàn)行代碼,其安裝包體積遠(yuǎn)遠(yuǎn)超過(guò)大多數(shù)鴻蒙APP。

連WPS都能在鴻蒙操作系統(tǒng)上流暢運(yùn)行,也就意味著,應(yīng)用鴻蒙化的技術(shù)障礙已經(jīng)基本消除。接下來(lái),開(kāi)發(fā)者只需要更多關(guān)注如何優(yōu)化功能的細(xì)節(jié)和確保穩(wěn)定性,以及如何進(jìn)行適配工作。

“HarmonyOS的學(xué)習(xí)曲線相對(duì)平緩,對(duì)于有其他編程語(yǔ)言經(jīng)驗(yàn)的人來(lái)說(shuō),上手并不困難?!瘪麣g表示。

WPS在融入鴻蒙生態(tài)的過(guò)程中,并未特意招募鴻蒙專(zhuān)業(yè)開(kāi)發(fā)者,其團(tuán)隊(duì)都是由傳統(tǒng)C++、Java、OC開(kāi)發(fā)人員,以及熟悉前端H5開(kāi)發(fā)的技術(shù)人員組成。

覃歡表示,對(duì)于在C++領(lǐng)域深耕多年的開(kāi)發(fā)者來(lái)說(shuō),HarmonyOS的設(shè)計(jì)理念顯得清晰且易于理解,其復(fù)雜度并不高。加之鴻蒙已解決了跨語(yǔ)言調(diào)試的難題,大多數(shù)問(wèn)題都可以通過(guò)制作demo或小型化實(shí)例來(lái)單獨(dú)細(xì)致地調(diào)試。

“將指令集遷移到華為平臺(tái)的過(guò)程實(shí)際上比預(yù)期要簡(jiǎn)單,沒(méi)有原本想象的那樣困難。畢竟經(jīng)歷過(guò)信創(chuàng),遇到過(guò)的問(wèn)題也多如牛毛;在鴻蒙這里,事情并沒(méi)有比之前更難,相較而言,在各自過(guò)往技術(shù)積累下,WPS鴻蒙化相比較還算順利?!?/p>

這8個(gè)月來(lái),WPS已經(jīng)全面測(cè)試并驗(yàn)證了HarmonyOS所提供的各項(xiàng)技術(shù)能力?!癢PS基本上已經(jīng)把大家所需要的所有技術(shù)能力,在鴻蒙系統(tǒng)上趟了一個(gè)遍,幾乎沒(méi)有什么技術(shù)點(diǎn)在鴻蒙上無(wú)法實(shí)現(xiàn)?!瘪麣g表示。

當(dāng)前,WPS 現(xiàn)已完成鴻蒙原生版應(yīng)用開(kāi)發(fā),在諸如手機(jī)端、折疊屏、平板等不同大小尺寸的屏幕上分別做了產(chǎn)品適配,并基于多平臺(tái)賬號(hào)統(tǒng)一,實(shí)現(xiàn)了跨端、跨設(shè)備的文檔和數(shù)據(jù)共享,支持多用戶協(xié)同、瀏覽編輯、修訂能力。目前,WPS鴻蒙原生應(yīng)用已在全端流暢運(yùn)行,WPS AI也在多端同步上線,數(shù)十項(xiàng)AI功能都遷移到了HarmonyOS NEXT。

圖片 4.png

WPS鴻蒙版亮相HDC 2024

WPS攜手鴻蒙,或?qū)㈩嵏惨苿?dòng)辦公生態(tài)版圖

HarmonyOS NEXT,作為華為技術(shù)實(shí)力的體現(xiàn),在新的發(fā)展道路上為用戶帶來(lái)更安全、更自主可控的操作系統(tǒng)體驗(yàn),能夠與微軟的Windows系統(tǒng)以及國(guó)際科技巨頭進(jìn)行有力競(jìng)爭(zhēng),助力我國(guó)爭(zhēng)取科技領(lǐng)域的主動(dòng)權(quán)。

眾所周知,微軟Office在Windows上擁有系統(tǒng)特權(quán),這是第三方軟件所不具備的。在功能上,WPS完全可以與微軟Office相媲美,但在Windows上依然缺乏系統(tǒng)特權(quán)。

隨著全棧自研的HarmonyOS NEXT的發(fā)布,意味著屬于中國(guó)自己的主場(chǎng)已經(jīng)準(zhǔn)備好了。覃歡表示,希望WPS能夠通過(guò)與HarmonyOS NEXT的深度結(jié)合,打破微軟Office在Windows上的深度綁定策略。

覃歡認(rèn)為,一旦這一想法付諸實(shí)現(xiàn),WPS將提供超出用戶預(yù)期的功能和體驗(yàn)。他們最近在做的啟動(dòng)優(yōu)化就是一個(gè)例子,由于能夠深入了解系統(tǒng)加載的細(xì)節(jié),從而針對(duì)性地調(diào)整,大幅提升了WPS啟動(dòng)速度。

截至2024年5月,鴻蒙生態(tài)設(shè)備已經(jīng)超過(guò)了9億臺(tái)。HarmonyOS在市場(chǎng)上的影響力正在不斷增強(qiáng),為政企辦公等應(yīng)用提供了廣闊的市場(chǎng)空間和新的機(jī)遇。

圖片 5.png

覃歡表示:“我們期待華為在這一過(guò)程中扮演關(guān)鍵角色,為辦公領(lǐng)域帶來(lái)新的動(dòng)力,在政企辦公生態(tài)領(lǐng)域建立一套更成熟,能夠與Windows系統(tǒng)相媲美甚至超越它的辦公生態(tài)體系,幫助我們?cè)诳萍碱I(lǐng)域占據(jù)優(yōu)勢(shì)地位。”

當(dāng)前,鴻蒙生態(tài)已經(jīng)超過(guò)5000個(gè)應(yīng)用,這不僅僅是一個(gè)簡(jiǎn)單的數(shù)字,而是一個(gè)生態(tài)系統(tǒng)的逐漸構(gòu)建和完善。

應(yīng)用生態(tài)的繁榮,絕非一日之功,它需要時(shí)間的沉淀、技術(shù)的積累,以及各方力量的持續(xù)投入。在這個(gè)過(guò)程中,華為作為生態(tài)的發(fā)起者和推動(dòng)者,不斷優(yōu)化鴻蒙的開(kāi)發(fā)工具和平臺(tái),降低開(kāi)發(fā)門(mén)檻,提升開(kāi)發(fā)效率。同時(shí),華為提供技術(shù)支持和資源投入,鼓勵(lì)開(kāi)發(fā)者創(chuàng)新,扶持優(yōu)質(zhì)應(yīng)用快速成長(zhǎng)。

相信隨著HarmonyOS NEXT商用版的發(fā)布,將有更多企業(yè)投身于鴻蒙帶來(lái)的藍(lán)海市場(chǎng),也為徹底顛覆移動(dòng)辦公生態(tài)的版圖帶來(lái)新的可能性。

轉(zhuǎn)載請(qǐng)保留原文鏈接:http://www.parkingblocks4less.com/a/keji/2024/0912/77772.html上一篇:上一篇:業(yè)績(jī)逆市修復(fù) 孚能科技做對(duì)了什么
下一篇:下一篇:沒(méi)有了