-
1 # 知熱點
-
2 # 大壁虎up
先簡單說說iOS應用與Android應用執行過程之間的差異。
iOSiOS應用基本上都是Objective-C,Swift開發,二者都屬於編譯型語言,編譯語言在執行的時候,必須先透過編譯器生成機器碼,機器碼可以直接在CPU上執行,所以執行效率較高。
他們都依賴於Clang + LLVM編譯,採用Clang作為編譯器前端,採用LLVM作為編譯器後端。
AndroidJava作為開發安卓應用的主要語言,Java由於是解釋型語言,在執行效率上不如編譯型語言。
再者Android執行機制依賴於JVM虛擬機器,邊解釋邊執行的特點使得Android在流暢性始終不如iOS。
生態環境不同iOS的應用生態好於安卓這邊,安卓10個開發商有10個標準,出現了很多頑劣,不良,危險的應用,這也就是安卓的開放帶來不好的影響。
而iOS則不同,統一標準,稽核,統一入口。
硬體上的不同蘋果的A系列處理器單核效能普遍高於Android這邊的高通旗艦,以及麒麟旗艦。最後,絕對的效能優勢。從iPhone 8 Plus時代iPhone的讀寫速度就已經突破了1200mb/s,Android比較快的UFS2.1撐死做到900mb/s,中間四分之一的差距是難以彌補的,畢竟沒有軟體最佳化能做到這種事。這在載入大型遊戲的場景下體現的淋漓盡致
不過對於新買的手機,兩者的流暢度,啟動速度很難感覺到差異,只不過隨著時間長久之後,差異越來越明顯。Android這邊的開放效能定製更多東西,比如國內很多優秀的UI
最後開源與閉源,你擁抱誰?
-
3 # 解悟科技諸葛慕
具體分析
1.蘋果系統和安卓系統都是基於Linux(網上關於蘋果系統基於Unix是錯誤的說法,Unix也是基於Linux開發的),Linux總體是面向全球免費的,IOS收費,原始碼閉源,安卓閉源,各廠家可以自己定製。蘋果系統閉源的好處就是,標準統一,利於開發和管理,第三方會按IOS系統標準最佳化,這樣總體系統更簡潔優秀。安卓系統各家定製不一樣,源頭谷歌開發難度大,標準不統一,第三方APP廠商最佳化安卓系統難度大。安全方面IOS確實安全,但是安卓現在也很安全,安卓不安全是早期安卓的說法,早期安卓系統漏洞多,現在的安卓系統已經是層層控權封鎖,非常安全,完全不輸iOS。安卓系統雖然開源,但是可玩性極高,免費APP也多。華為的方舟編譯器可以統一安卓APP最佳化標準為第三方APP廠商免費開源,未來很有可能改變這一局面。
2.蘋果這麼多年之所以流暢主要原因是IOS與安卓的執行邏輯不一樣,IOS是先響應,理解,然後一站式執行,安卓系統是邊理解,邊執行,整個過程不如蘋果流暢,順手,動畫看上去也不如蘋果。目前安卓陣營只有搭載華為方舟編譯器的華為手機修改了安卓底層,與IOS一樣是一站式執行,響應速度也提升巨大,其他安卓系統最多隻有未來第三方方舟編譯器過的APP最佳化。
3.IOS的記憶體管理和後臺管理與安卓大大不一樣;IOS後臺是墓碑制,用過即焚(安卓現在也能做到),記憶體是邊執行,邊自動清理垃圾,而安卓陣營記憶體清理垃圾效率沒有IOS及時和徹底(還是底層程式碼執行的鍋),這樣的後果就是很多安卓手機越用越卡,流暢度衰減嚴重。當然安卓陣營也有比較做得好的,比如華為EMUI,2016年就修改了安卓底層系統,號稱500天不卡。(有對安卓底層動刀實力的公司很少,因為難度太高,目前只有華為敢說自己修改了安卓底層)。通知管理和APP許可權管理,IOS做得很優秀,也是蘋果流暢的原因之一,但是現在安卓高版本系統這方面一點也不輸IOS。
4.蘋果系統流暢還有頂級硬體的支援,每年的A系處理器綜合性能都是最強(基帶效能除外),CPU計算處理速度快,才能支撐整個系統的流暢運轉。手機螢幕更是超高的重新整理率,有利用提高跟手度和APP響應速度。蘋果手機的跟手度好就是和螢幕重新整理率高,有很大關係。安卓螢幕重新整理率也漸漸提了上來,整體還是不如蘋果,至於其他硬體配置完全不輸蘋果,甚至超越。
5.IOS的APP稽核制度非常嚴格,不會讓流氓軟體流入系統,影響使用者流暢度體驗,這方面蘋果系統也做的非常好。但是許多安卓廠商的系統一樣嚴格,比如三星華為。
回覆列表
我認為蘋果在軟體稽核機制、軟硬體契合度、軟體執行機制三個方面差別很大,這也是蘋果比安卓流暢的重要原因。
1.每個軟體上架都需要經過嚴苛的稽核
相較於安卓魚龍混雜的各種軟體,蘋果使用者能安裝的軟體能更加契合系統,自然在執行起來更流暢一些。
2.軟體硬體相輔相成
IOS系統這是蘋果獨有的,並且開發時間相對較早,蘋果在開發新一代手機的時候就會考慮到尋找適合IOS系統的硬體,儘可能把系統的功能開發到極致。這也是很多時候我們感覺蘋果硬體極差,但是使用效果確實出奇的好,能做出這種效果蘋果算是獨一份。
3.獨特的軟體執行機制
對於手機裡有很多常用的軟體的安卓使用者來說,每天必做的一件事就是結束後臺執行的軟體程序。如果一直不管的話,手機後臺執行的軟體越來越多,直到手機嚴重卡頓甚至卡死。另一方面安卓軟體能獲取到的手機許可權太多了,甚至在不使用對應軟體的時候也會呼叫系統資料和功能模組,嚴重影響系統執行速度。
而蘋果使用者則完全沒有清理程序的煩惱,系統會在使用者推出APP後只保留最後的一個靜態頁面,基本上相當於自動結束了這個軟體的程序。在手機許可權方面,軟體很難獲得太多的手機許可權,也無法呼叫手機內資料拖慢手機速度。
總體來說安卓的開放性雖然方面了使用者,但是確實對系統整體速度產生了一定影響;如果不能解決這些問題,安卓還是很難在流暢性和手機使用壽命上超越蘋果。