科普倒是不敢講,只能說(shuō)說(shuō)自己的一些看法,現在的安卓旗艦手機至少用2年的時(shí)間是沒(méi)有任何問(wèn)題的,至于你說(shuō)的卡頓是之前安卓的卡頓,或者是很多人拿著(zhù)幾年前的手機或者是千元來(lái)做對比,當然我們不可否認的是ios系統顯然仍然是相比安卓有優(yōu)勢,造成這種差異化的原因,其實(shí)有三個(gè)系統的運行效率不同,以及后臺機制的不同,以及生態(tài)環(huán)境不同:當然前提我們使用的安卓系統不是原生的,是經(jīng)過(guò)各個(gè)廠(chǎng)商優(yōu)化來(lái)的,所以其實(shí)已經(jīng)加入了更多的功能,而ios系統沒(méi)有經(jīng)過(guò)點(diǎn)綴,所以剛開(kāi)始已經(jīng)有了區別:
安卓系統和ios系統兩者編寫(xiě)程序的語(yǔ)言不同,ios是Objective-C編程的優(yōu)勢是效率高,但是相比安卓JAVA的優(yōu)勢則是跨平臺不過(guò)運行效率相對偏低,其實(shí)這兩個(gè)編程語(yǔ)言所帶來(lái)的機制不同,就已經(jīng)造成了各自系統之間的流暢性差異化。
效率高的原因就是系統處理任務(wù)的方式不同,比如蘋(píng)果手機,我們一直說(shuō)過(guò)度動(dòng)畫(huà)很自然,這是因為iOS對屏幕反應的優(yōu)先級是最高的,簡(jiǎn)單點(diǎn)來(lái)說(shuō)的話(huà),就是當用戶(hù)只要觸摸接觸了屏幕之后,系統就會(huì )最優(yōu)先去處理屏幕顯示(Touch這個(gè)層級),也就是你點(diǎn)開(kāi)一個(gè)APP之后,直接就點(diǎn)開(kāi)了。
而安卓手機的運行機制是APP都是一直在虛擬機中,你點(diǎn)開(kāi)APP之后,首先需要的是由底層傳輸數據到虛擬機中,再由虛擬機傳遞給用戶(hù)UI,因為Java語(yǔ)言因為虛擬機的存在,二次轉化再執行效率就要低很多。而這次的華為方舟編譯器就是解決這個(gè)方面的問(wèn)題,省去了中間的步驟。
蘋(píng)果手機為什么運行內存那么小,但是系統也可以流暢運行,就是后臺算是假后臺,我們簡(jiǎn)單點(diǎn)來(lái)說(shuō)的就是,比如我們打開(kāi)一個(gè)APP之后,我們回到主界面的時(shí)候之前的軟件就相當于暫停使用,不再消耗RAM,所以你會(huì )發(fā)現比如你再次載入APP的時(shí)候,發(fā)現還是在你退出來(lái)那個(gè)界面。而安卓是真后臺,即使你退出軟件,軟件也會(huì )在后臺自啟,繼續占用你的RAM,而RAM是有限的,當RAM剩余太少的時(shí)候你就會(huì )感覺(jué)到卡頓。同時(shí),后臺的程序運行也會(huì )占用CPU資源,使手機處理能力下降,這也是安卓手機需要通過(guò)使用更高的配置來(lái)提高流暢度的原因。
安卓手機不管你的軟件來(lái)源是哪里,比如手機自帶的商店,還有百度,還是有其他都可以下載,這也是很多人為什么拿安卓手機當做是備用手機,就是方便下載軟件,因為安卓是開(kāi)源的任何軟件開(kāi)發(fā)商或者個(gè)人都能開(kāi)發(fā)安卓的軟件,也正是由于開(kāi)源和各個(gè)品牌手機硬件差異極大,導致安卓手機的系統體驗各有差異,軟件兼容性也不如ios。
而蘋(píng)果手機你的軟件來(lái)源只能是應用商店,所以導致了一些不正規的APP違規占用后臺內存和其他方面的一些問(wèn)題。
當然蘋(píng)果手機處理器性能的強大也是一部分的原因,因為單核心能力強,所以我們平時(shí)使用的時(shí)候只需要用到單核心,而剛才講過(guò)了蘋(píng)果在運行一個(gè)應用時(shí),另一個(gè)是暫停的,所以單核心的能力強優(yōu)勢就體現出來(lái)了。
安卓要運行虛擬機,這樣就加重了處理器的負擔,加上安卓系統的多樣性,開(kāi)發(fā)者需要對不同系統進(jìn)行定制,所以?xún)?yōu)化不佳;而蘋(píng)果可以限制開(kāi)發(fā)者的開(kāi)發(fā)方案,iOS系統只需要保證幾款iPhone、ipad等蘋(píng)果自己的移動(dòng)設備上的運行體驗即可,而Android則需要兼顧盡量多的已存在和未存在的不同硬件組合,在可控的環(huán)境內對系統做針對性的優(yōu)化。而且剛才講過(guò)了兩者的運行效率,Android采用的Java語(yǔ)言因為虛擬機的存在,二次轉的效率相對較低。
聯(lián)系客服