首頁>科技>

今年2019年4月11日,華為消費者業務CEO餘承東宣佈,華為正式釋出華為方舟編譯器,這一編譯器能改善安卓應用編譯效率,從原先的邊解釋邊執行轉變為全程機器碼高效執行程式。

到2019年8月31日,華為方舟編譯器(OpenArkCompiler)正式開源,官網已上線,本次方舟編譯器開源的是編譯器框架部分原始碼,包括編譯器中間表示(IR)和語言編譯實現,同時搭配編譯器其他二進位制元件,實現Java程式到aarch64彙編指令的編譯過程。

官方對方舟的優勢也是描述的很簡潔

從官網給出的介紹看,目前已有至少45款第三方應用支援華為方舟編譯器,都是大家耳熟能詳的超大使用者量APP。

雖然安卓的應用數量級是45個N多N多倍,但是怎麼說,目前來說還是值得欣慰的,畢竟也是涵蓋了絕大部分日常應用。

不過也存在問題,雖然這45個app支援了方舟了,但是除了華為的EMUI,帶有方舟執行環境,其他的不支援了。以MATE20的EMUI版本升級日誌為例

它是在EMUI9.1.0.123版本才新增支援方舟編譯器的。意味著上述的45個app,只有在這個版本之後的EMUI才能執行並體現出效率。

為什麼?看下方舟編譯器和現有的差別

編譯器具體的工作如下

說的簡單點,它只是幹掉了java虛擬機器,用另外的一套執行機制代替了,也就是經過方舟編譯後的app,在執行的時候,還是需要方舟執行環境來支援的。這個執行環境配合方舟編譯出來的內容,執行的效率才會更高。

所以,這裡的45個應用,還是多麼的可貴。相當於這些app廠家專門為方舟的執行環境編譯了一個版本,而且這個版本還只能在華為的EMUI9.1後的版本才能執行。不過好在官方提到,只要將之前的app版本重新用方舟編譯下就可以了,不過,攻城獅們都知道,不同的環境編譯,遇到的坑肯定是不少的。

除華為P30系列(出廠自帶)外,目前已有20多款老機型在升級至EMUI 9.1後將陸續支援方舟編譯器。

儘管如此,還是略顯悲壯,畢竟支援的手機機型再多,整個安卓市場的手機卻更多,目前也僅僅只是華為的手機才能,其他的手機廠商,還沒有加入方舟的執行環境。

說起這個,想起之前知乎上一個問題:“如何看待「支付寶採用華為方舟編譯器幾乎秒開」的訊息”。原因是,在支付寶更新了一個版本後,開啟的速度飛快,剛好這個版本也是在方舟被提起後的時間點,然後引發對了大家的對這個問題的探討。

但是事實並不是這樣,那個時候的版本也並沒有使用方舟編譯器,官方也做了對應的解釋, 內容如下:

估計也就支付寶的技術團隊才會花那麼大的精力和嘗試,將app的速度提高到這個大家都拍手的地步。

雖然我自己用的已經是EMUI9.1的mate20, 並且上述45個應用絕大部分都用過,確實很快。不過之前也沒覺得怎麼慢,.

其他的手機還沒有嘗試過,畢竟至少得用相同的硬體環境,搭建不同的軟體環境,評測起來才更客觀真實,這個就留給一些測評達人來驗證好了。不過根據優化的策略,相信還是會變快的。

網上經常看到故意誇大的說方舟編譯的app怎麼的怎麼的。我都不相信他們用的是EMUI9.1的手機,可能只是單純的吸引眼球,引起大家的注意罷了。

要想真的大家體驗到,路還真的挺長的。不僅僅是需要開發者來協助,還需要各個版本的手機系統來支援。開發者解決支援app的數量問題,廠家需要提供執行環境。

目前還不知道會不會有利益的問題在裡面,畢竟物聯網當道,各個廠家都有各自的IOT佈局,方舟一旦和IOT關係太緊密,說不定廠家都不太願意將方舟執行環境引入到自己的系統中。

這個真是的一場硬仗,但還是盼望能夠成功。

最新評論
  • 整治雙十一購物亂象,國家再次出手!該跟這些套路說再見了
  • 工業網際網路速遞 | 2019年第46期