華為方舟編譯器並不需要在手機中進行安裝,它也不是手機系統升級後自帶的ART虛擬機。
它是APP軟體上線環境中的一個編譯器,由專門的程序開發者去負責操作,APP項目在上線手機應用商店時需要通過它進行編譯,減少對用戶手機的內存消耗。
一.方舟編譯器並不是安卓版的ART,它對手機內存的消耗較少。
方舟編譯器與安卓ART處理源文件方式的不同
根據2019年的華為開發者大會的詳細內容來看,方舟編譯器採用了靜態編譯代碼的方式讓軟體程序可直接編譯成機器語言在手機運行環境中去正常運行。
而安卓原生架構想要讓軟體程序正常運行,必須要藉助於手機運行環境中的ART虛擬機API服務才能進行軟體源碼的重新編譯。不過,ART虛擬機在編譯軟體程序代碼時會佔用手機一定的運行內存空間,這主要與它的垃圾回收(GC)機制有密切的關係,即便它比以前的Dalvik虛擬機性能要強,但仍存在過多消耗內存的現象。
況且,方舟編譯器的使用場景是在項目的開發和上線環境中,而安卓apk源碼文件的真正使用場景是在手機運行環境,因為安卓apk源碼文件最終的執行需要藉助於手機運行環境的ART虛擬機。
二.方舟編譯器的真正使用者並不是手機用戶,而是程序開發者。
鴻蒙系統服務層-方舟編譯器子系統
從2021年鴻蒙系統上線手機設備之後,鴻蒙APP的開發者也開始迅速增加,我們在完成鴻蒙APP的開發之後,需要進一步測試,測試完項目之後,需要把APP項目上線到華為應用市場中,從項目開發到上線的整個操作過程都一直由程序開發者來完成。
鴻蒙APP上傳時需要編譯「.har」包為「.app」格式
方舟編譯器現在作為鴻蒙系統服務層的一個子系統,它現在是在項目的上線過程中進行使用。因為程序開發者在開發環境只是把項目打包成「.Har」後綴格式,想要讓項目真正上線並運行,只能通過方舟編譯器進行編譯變成「.app」後綴格式。
對於這些專業操作,普通手機用戶目前是無法接觸也無法深入去了解的,需要由專業的項目開發者來單獨完成。
結語:
方舟編譯器現在是由程序開發者在使用,主要是在項目上線時讓「.Har」、「.apk」等格式的源碼文件能夠編譯成「.app」文件,讓項目能夠正常上傳到手機運行環境中被手機用戶使用。
如果方舟編譯器真的被有些不明所以的人誤認為存在於手機設備中,那豈不是和安卓手機的ART虛擬機一樣。畢竟,方舟編譯器的作用就是為了讓程序源文件在編譯後變成機器碼,能夠直接在手機運行環境中正常運行就可以了。