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

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

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

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

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

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

圖片 1.png

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

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

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

不過也情有可原。覃歡經(jīng)歷過WPS體系下的各種架構(gòu)變更,其個人成長路線與WPS的快速發(fā)展期高度重合。2012年,覃歡才剛進入金山辦公這家公司,便參與基于Qt遷移WPS到多平臺,包括Windows、Linux,隨后又擴展到macOS和信創(chuàng)平臺。“我們那一批人,趕上了WPS重構(gòu)的末班車,經(jīng)歷了體系架構(gòu)變革、多平臺適配以及處理各種指令集,幾乎全程參與了這些變革。”覃歡表示。

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

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

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

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

“我們其實也希望能夠搭載HarmonyOS NEXT這趟快車,迅速加入這一進程并共同開拓市場,掌握一定的市場話語權(quán)。”覃歡表示。

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

圖片 2.png

WPS鴻蒙版界面

團隊成員不僅要對WPS底層結(jié)構(gòu)尤其內(nèi)核有深入理解,還要具備跨平臺開發(fā)的意識。此外,要擁有多系統(tǒng)同時開發(fā)的能力,因為要考慮將內(nèi)核多端統(tǒng)一。

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

只能重寫。

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

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

40多條需求,倒逼HarmonyOS IDE 成長

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

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

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

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

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

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

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

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

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

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

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

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

圖片 3.png

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

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

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

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

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

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

“沒有什么技術(shù)點在鴻蒙上無法實現(xiàn)”

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

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

“HarmonyOS的學(xué)習曲線相對平緩,對于有其他編程語言經(jīng)驗的人來說,上手并不困難。”覃歡表示。

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

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

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

這8個月來,WPS已經(jīng)全面測試并驗證了HarmonyOS所提供的各項技術(shù)能力?!癢PS基本上已經(jīng)把大家所需要的所有技術(shù)能力,在鴻蒙系統(tǒng)上趟了一個遍,幾乎沒有什么技術(shù)點在鴻蒙上無法實現(xiàn)。”覃歡表示。

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

圖片 4.png

WPS鴻蒙版亮相HDC 2024

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

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

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

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

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

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

圖片 5.png

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

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

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

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

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