我個人認為安卓想達到IOS的流暢程度有些困難,IOS的流暢只是一個感覺,實際的表現主要是幀率穩定和非線性動畫,而且還牽扯到IOS的底層實現,包括OC天然的高效率等等因素,至於什麼墓碑機制,蘋果統一推送,app規範品質高之類的,我覺得都不是主要原因,這只是體現了蘋果對IOS強大的掌控力,可能會更加有利於手機的資源負載平衡,但是隨著安卓裝置硬體的不斷提升,這些真的不是最重要的因素了,就算安卓是真後臺,來個7,8個應用後臺執行,對現在的安卓機都不叫事,不存在系統吃緊的原因,我個人認為主要因素主要有3點
1. IOS的響應優先順序不一樣,我記得IOS會優先處理touch事件,然後就是動畫之類的媒體事件,包括圖形處理,而安卓對於touch或者說圖形影象處理的層級相對靠後,我覺得這是一個原因(這裡我說一下,我看評論很多人都對這點有很大疑問,首先,我也不是搞底層優化的,只是之前看過一篇文章,他的意思好像是說IOS的媒體或者圖形處理會優先響應觸控事件,確實之前的說法不太妥當,touch事件肯定是要第一時間響應的,只不過是有延遲的差異,因為目前安卓版本更新很頻繁,如果有一些知識我沒有及時更新,還請諒解)
2. 再一個就是蘋果很聰明的用了很多非線性動畫,包括很多精美的動畫預設就是封裝好的,是控制元件自帶的效果,比如ListView(安卓的類名)彈性滾動等等,這些動畫在很大程度上會給你很流暢順滑的感覺,而安卓大部分控制元件只是實現功能,如果你想在互動層面錦上添花就要自己去實現你想要的效果自定義控制元件,這就參差不齊了,很多安卓現在比較常用的互動邏輯,完全都是借鑑IOS的原生控制元件效果,有的時候真的不得不佩服蘋果,很多細節考慮的很周全,因為人家原生的控制元件就足夠精美高效,讓開發者開發出來的應用在使用者使用邏輯上達到高度的統一,不過在比較新的一眾Material Design控制元件中,比如Recyclerview等等,安卓也原生加入了些靈動的動畫效果,但是總感覺小巫見大巫,IOS的啟動速度一向不是優勢,而安卓一直在這方面很強勢,參考小白的測試資料,所以我覺得流暢順滑和速度並不是成正比的,啟動不快的IOS一樣給人留下很順滑的感受。
3. 我覺得就是OC的開發語言,java是虛擬機器機制,需要轉換位元組碼,換成機器能讀懂的指令,而且在之前都是邊解釋邊執行,效率可想而知,不過在5.0後出了ART模式,本質就是想解決這個問題,可以在初次使用時全部解釋完,但是我覺得效果不是很好,最近華為也出了方舟編譯器,其實原理都一樣的,OC我不太懂,但畢竟是C語言系的,在C的基礎上加了面向物件的概念,更易用,雖然java天生就是面向物件的,但是C和java本就是完全兩種語言和執行模式,OC的高效不言而喻,這肯定也是一個主要原因
剩下的就都是普羅福斯都知道的一些東西,什麼IOS封閉啊,APP品質高啊之類的,蘋果的流暢確實是不容易,我作為一個安卓開發人員其實很喜歡蘋果的裝置,目前用P30,準備下一個手機換個蘋果的,就說這麼多吧,歡迎指正和探討
-----------------手動分割線-----------------
感謝大家的點贊和評論,我再補充一些我認為比較大的影響因素,上面的回答說到啟動速度,確實是安卓領先,但是我覺得以蘋果的硬體和軟體的實力,達到啟動速度快的目的並不難,我甚至認為蘋果是有意為之的,故意讓啟動中間加一些動畫,還是那句話,流暢和順滑真的不是一個快就完事了,是一系列的從無到有,從慢到快的漸變過程,我覺得安卓的動畫太死性,因為一般用的屬性動畫,就是從A點到B點的一個位移,如果想達到IOS的彈性效果,就要加入差速器,但是我試過,流暢度還是比不了IOS,而且還有一點不可否認,就是蘋果的裝置少,相對應的軟體就可以最大程度的去匹配硬體,這就跟為什麼PS4的硬體水平往往都落後於同期的PC很多,但是玩遊戲的流暢度和體驗永遠比PC強好多,因為PS4就這一款硬體,所有的軟體開發商相對好做適配,而PC,么蛾子太多,硬體玲琅滿目,還能DIY,這就跟安卓和IOS的情況很像,IOS同年幾乎只有一兩款裝置更新,而且硬體完全一致,核心都由蘋果設計,比如CPU等等,而安卓那真是不要太多,光CPU就有很多廠商可以提供,而且手機廠商還要對系統做二次開發和適配,加入很多自己的業務內容,這在本質上就已經算是汙染了作業系統,而這也是谷歌想做的,就是自己出個"架子",然後大家各取所需去改造去新增你想要的"肉",尤其是國內連谷歌服務都用不了,真的就只剩一個架子了,所以能單獨做軟體優化也是一個很重要的原因,這也是為什麼說蘋果的硬體和軟體結合的最完美,因為都是單對單,永遠剛好夠用,達到利益和產品使用的平衡點,蘋果的記憶體,蘋果的電池,甚至蘋果的充電器都落後安卓N個時代,但一樣擁有比安卓更好的體驗,這種以小博大的感覺,就像中國太極的四兩撥千斤,沒有哪個股東不喜歡這種企業,所以蘋果的價格貴不是沒有道理,因為只此一家,總之,蘋果的系統體驗真的不是一個開發人員就能左右的事情,這其實體現了完全兩種不同的商業模式,兩種理念,當然,目前隨著高通一統天下,安卓的優化相對而言,少了很多選項,而且你也可以看到廠商都會對高通的晶片做優化,沒辦法,因為安卓就是SOC企業在牽著手機廠商在走,而IOS完全是蘋果在牽著其他企業在走,你說能一樣嗎?????