為什麼安卓系統用久了會卡,蘋果系統卻依然流暢?誰能科普下,比較容易懂?

沒玩無影的啦1


感謝邀請

為什麼安卓系統用久了會卡,蘋果系統卻依然流暢?誰能科普下,比較容易懂?

科普倒是不敢講,只能說說自己的一些看法,現在的安卓旗艦手機至少用2年的時間是沒有任何問題的,至於你說的卡頓是之前安卓的卡頓,或者是很多人拿著幾年前的手機或者是千元來做對比,當然我們不可否認的是ios系統顯然仍然是相比安卓有優勢,造成這種差異化的原因,其實有三個系統的運行效率不同,以及後臺機制的不同,以及生態環境不同:當然前提我們使用的安卓系統不是原生的,是經過各個廠商優化來的,所以其實已經加入了更多的功能,而ios系統沒有經過點綴,所以剛開始已經有了區別:

1.運行效率的不同:

  • 安卓系統和ios系統兩者編寫程序的語言不同,ios是Objective-C編程的優勢是效率高,但是相比安卓JAVA的優勢則是跨平臺不過運行效率相對偏低,其實這兩個編程語言所帶來的機制不同,就已經造成了各自系統之間的流暢性差異化。

  • 效率高的原因就是系統處理任務的方式不同,比如蘋果手機,我們一直說過度動畫很自然,這是因為iOS對屏幕反應的優先級是最高的,簡單點來說的話,就是當用戶只要觸摸接觸了屏幕之後,系統就會最優先去處理屏幕顯示(Touch這個層級),也就是你點開一個APP之後,直接就點開了。

  • 而安卓手機的運行機制是APP都是一直在虛擬機中,你點開APP之後,首先需要的是由底層傳輸數據到虛擬機中,再由虛擬機傳遞給用戶UI,因為Java語言因為虛擬機的存在,二次轉化再執行效率就要低很多。而這次的華為方舟編譯器就是解決這個方面的問題,省去了中間的步驟。


2.後臺機制不同

蘋果手機為什麼運行內存那麼小,但是系統也可以流暢運行,就是後臺算是假後臺,我們簡單點來說的就是,比如我們打開一個APP之後,我們回到主界面的時候之前的軟件就相當於暫停使用,不再消耗RAM,所以你會發現比如你再次載入APP的時候,發現還是在你退出來那個界面。而安卓是真後臺,即使你退出軟件,軟件也會在後臺自啟,繼續佔用你的RAM,而RAM是有限的,當RAM剩餘太少的時候你就會感覺到卡頓。同時,後臺的程序運行也會佔用CPU資源,使手機處理能力下降,這也是安卓手機需要通過使用更高的配置來提高流暢度的原因。

3.生態環境的不同

  • 安卓手機不管你的軟件來源是哪裡,比如手機自帶的商店,還有百度,還是有其他都可以下載,這也是很多人為什麼拿安卓手機當做是備用手機,就是方便下載軟件,因為安卓是開源的任何軟件開發商或者個人都能開發安卓的軟件,也正是由於開源和各個品牌手機硬件差異極大,導致安卓手機的系統體驗各有差異,軟件兼容性也不如ios。

  • 而蘋果手機你的軟件來源只能是應用商店,所以導致了一些不正規的APP違規佔用後臺內存和其他方面的一些問題。

總結

  • 當然蘋果手機處理器性能的強大也是一部分的原因,因為單核心能力強,所以我們平時使用的時候只需要用到單核心,而剛才講過了蘋果在運行一個應用時,另一個是暫停的,所以單核心的能力強優勢就體現出來了。

  • 安卓要運行虛擬機,這樣就加重了處理器的負擔,加上安卓系統的多樣性,開發者需要對不同系統進行定製,所以優化不佳;而蘋果可以限制開發者的開發方案,iOS系統只需要保證幾款iPhone、ipad等蘋果自己的移動設備上的運行體驗即可,而Android則需要兼顧儘量多的已存在和未存在的不同硬件組合,在可控的環境內對系統做針對性的優化。而且剛才講過了兩者的運行效率,Android採用的Java語言因為虛擬機的存在,二次轉的效率相對較低。


回答完畢

歡迎留言發表不同的看法和想法:


分享到:


相關文章: