首頁>Club>
為什麼小記憶體iPhone比大記憶體Android機更流暢
73
回覆列表
  • 1 # 百無聊賴的二營長

    iOS系統是封閉的,因為只供iPhone系列手機使用,下載的應用都是經過蘋果應用商店app store一個稽核,根據相應標準制作的app,每個app要發訊息給iPhone,只能發給app store訊息內容,不開啟app,不佔用記憶體,就像QQ來了幾十條訊息,你不點開,QQapp就不會啟動,這就是所謂的“偽後臺”,所以無論有多少訊息,只佔用訊息的記憶體,就像女生輕鬆拿著幾封信,輕輕鬆鬆 ,iOS只供自家使用,許可權牢牢把握在蘋果公司手裡,使得系統按他的要求執行,系統更流暢。

    Android系統是開放的,開元的,因為谷歌要外賣Android系統,Androidapp都是個公司自行開發的在你安裝的時候隨意調取Android系統許可權,想盡辦法讓它的app隨時開啟,來一條訊息都會觸發後臺開啟app,再給你顯示訊息內容,就像QQ,你關閉了QQapp,可還是會跳出視窗,你點進去馬上就打開了,實際上在訊息現示的時候QQ已經打開了,所以每次一開手機來了好幾條各個app的訊息時候,後臺就已經打開了那些app,就是“真後臺”,佔用記憶體大,就像一個大漢拿著幾封信還挑著寫這幾封信的胖子一樣。因為系統外賣,得滿足買家開發需求和app開發商的開發需求,許可權的濫用,使得Android系統的“碎片化”,愛卡頓。

    當然大記憶體無論對Android還是iOS都有好處,當你長時間使用手機,使用多個大app來回切換使用時,不可避免要佔用記憶體,如長時間使用後QQ能佔400MB,微信300MB,愛奇藝500MB,王者榮耀500MB,此時1GB的iPhone6就有點吃不消了,為了保證系統流暢,只能清快取or殺後臺,重新開啟app時要麼重新啟動,要麼app裡的內容重新載入。大記憶體能保證多個app駐後臺方便你的快速切換使用。

    Android系統經歷多個版本的迭代,開始整合碎片化和開元度,Android5時代就已經很流暢了,如今到Android7原生系統已經與卡頓無緣了,注意此處說的是原生系統,不包括某些廠家UI的負最佳化。

    正因為Android的不斷追趕,iOS也被迫開始升級記憶體了,如今3GB的iPhone7確實仍是最流暢的手機。

    1969年一代著名商用系統Unix的誕生,其分支子系統Linux作為開放系統被當時開發商所喜愛,谷歌買下來Linux的版權,基於Linux開發了Android,從此走向了開元系統之路。而喬布斯不屑於向谷歌要使用權,於是轉向購買了Unix的另一個子系統Darwin,Darwin是封閉的系統,由此開發了iOS,走了封閉的系統之路,後來的iPhone流暢好用,都是走了封閉系統的福利。由上可知Android的開放之路走了很久,碎片化也很嚴重,想要整合碎片化,道路任然漫長。

    無論是開元系統還是封閉系統,都是很好的發展路線,沒有誰好誰壞,蘋果iOS憑藉其封閉系統帶來不錯的使用體驗和口碑,獲利頗豐,但只限於蘋果內部的生態,未來發展有待突破。谷歌透過外賣開元Android系統也收穫了很大利潤,也得到了廣泛的生態資源,符合未來資源使用偏好。

  • 2 # 野人13904586

    不講技術,我從市場經濟角度分析下。

    Android 的開發只是從軟體的角度,應用程式的執行系統,開發之初就不重點在硬體資源的效率。

    IOS 是在蘋果公司的軟硬體統籌規劃下同步進行的。蘋果公司的電腦也是軟硬體同步,而不是微軟的相容道路。

    兩者的開發者立場不同,尤其蘋果賣的是軟硬體一體化的整合方案,它最少要在軟硬體兩方面都贏利,所以設計之初就追求產品的價效比,更明確的說是效能和成本的比例,當然越大越好了。

  • 3 # louwailou

    一個封閉,一個開放。因為封閉考慮的東西就少,東西就簡單,簡單了就快了。開放就得考慮相容性,相容的越多就越複雜,複雜了就慢一點。但是現在安卓也很流暢,使用上沒啥差別。

  • 4 # cnBeta

    這種情況很快會得到改觀:

    APP的更迭固然能夠修復各種BUG以及帶來更多的功能和UI最佳化,但是容量也變得越來越大,這也是為何Pixel 2以及LG V30等主流旗艦64GB起步的重要原因。那麼對於儲存容量有限的中低端手機如何才能解決這個問題呢?Google的解決方案在Android 8.1中引入了全新的APP機制,透過減少應用快取空間來釋放空間。

    Android Open Source Project (AOSP)在10月31日上傳的commit中,描述了一項節省空間的功能,可以在裝置處於低容量儲存的時候自動觸發。Android系統就會呼叫pm.dexopt.unopt_after_inactive_days,然後篩選出長期處於非活躍狀態的APP,並對這些APP的快取進行清理。

    整個工作流程如下:在Android 8.1系統中,標記為“inactive”的應用並不會透過dexopt執行,Android工具會透過最佳化.dex檔案來壓縮生成 .odex檔案,這些應用就不會在Dalvik compiler的快取中佔用空間。

  • 5 # 超能網

    這中間的原因不少,而且iPhone的記憶體也是越來越大了,從之前的1-2G升到了2-3G,也是適應時代的發展需要,當然Android手機的步子更大些了,現在基本上是3GB起步,標配4-6GB,高的達到8GB了,盡我所知,分析如下:

    垃圾回收機制,意味著Android記憶體越大越好

    Android記憶體管理機制是物盡其用,有多少記憶體就用多少,直到記憶體不夠了,就會執行垃圾回收,這樣的機制有利於大記憶體的發揮,而對於記憶體有限的手機就很不好。問題在於,垃圾回收是一個昂貴的過程,會使裝置變慢,這也是大家經常吐槽手機用了一段時間變得有些卡的主要原因。

    但是iPhone沒有垃圾回收這樣的機制,它用的是自動引用計數,這是Objective-C管理物件的方法,比如引用時計數+1,解引時-1,計數為0時就釋放,整體上它對記憶體的利用率要高得多,不會有事沒事都丟在後臺,在記憶體上佔用要少得多,當然,也經常有人吐槽iOS這種“偽後臺”。

    雖說記憶體越大越好,但對大多數人來說,4GB記憶體的Android手機已經能滿足絕大多數人的需求了,並不是像8GB對iPhone的3GB那麼誇張。

    使用者介面的優先順序,才是iPhone流暢的主要原因

    iOS優勢之一就是操作起來流暢十足,這個主要原因是iOS UI渲染髮生在具有實時優先順序的單獨執行緒中,但是在Android上,UI渲染只是發生在普通優先順序的主執行緒中,這意味著Android中的其他應用隨時可以接管處理器資源,並傷害基本的使用者介面互動,從而導致明顯的延遲。

    應用程式管理,開放、自由與混亂

    Android給了開發人員更多的權利和自由,導致記憶體洩漏或資源佔用後臺程序,雖然現在Android已經做了一些嘗試來控制它,但力度還遠遠不夠,尤其在國內還有很多不良的開發人員肆意在利用這種自由做著一些傷害使用者體驗的事。

    iOS就不同啊,它對開發人員提出了很多限制,在這樣循規蹈矩下,開發人員也做不了什麼傷害的事情來,當iOS認為某應用不需要執行時,iOS會終止任何程序。

    軟體與硬體的協作

    iOS與iPhone是高度協作的,它們都是蘋果公司設計和測試,並由Apple的合作伙伴製造,而Android四海為家,開發人員與硬體製造商分離,碎片化已不堪重負,在軟硬體的銜接上遠不如iPhone了。

    正是由於這樣種種原因,才造成了題主所問的問題,當然,Android正在努力趕上,Google也在不斷規範這個系統,兩者之間的差距正在縮小,但是,我們也要正視這種差距的存在。

  • 中秋節和大豐收的關聯?
  • 寶寶出生了,你和老公的感情更好還是更壞?