是誰毀了我們的安卓應用?

來源:互聯網
上載者:User

標籤:android   使用者體驗   產品   android開發   應用程式   

做過android開發的程式員都知道,在開發一款android軟體的時候往往要考慮到各種適配的情況。例如幾個比較常見的就
是螢幕的適配和系統版本的適配。從螢幕來看由以前的手機螢幕到現在的平板螢幕,從以前的低解析度
螢幕到現在的高解析度螢幕,都在不斷的變化。還有就是android的版本從最初的android 1.5(紙杯蛋糕)到現在的android5.0(棒棒糖),每
到一個版本都有很大的變化,其效能上也有很大的提升。雖然相比較於以前android的最初版本到現在的android5.0有了很大的改善,但是
版本的過渡也給程式員帶了很的困擾,例如:如果想要用新版本的一些特性,但又要考慮到以前版本的相容。所以往往在開發的一款android軟體
時候都是基於最低的SDK版本來進行開發的。就目前來看各個版本的市場佔有率:

 

 

具體資料為:
“果凍豆”系統(Android 4.1.x和Android 4.2.x)佔有率攀為37.9%;“薑餅”系統(Android 2.3.x)佔有率為34.1%。
“冰淇淋三明治”(Android 4.0.x)為23.3%;“蜂巢”(Android 3.2)僅為0.1%;Android 2.2佔有率為3.1%;Android 2.1為1.4%。
而Google6月初發布的資料顯示:“薑餅”系統佔有率最高,達36.4%;“冰激淩三明治”(android4.0)佔有率為25.6%;android4.1/4.2“果凍豆”佔有率為33%。

 

 

通過以上資料可以看出雖然大部分的使用者所用的系統版本都是在android4.0以上,但是android2.3.x的市場佔有率也有很多。
所以對於android開發人員來說開發一款android軟體想要獲得更多的使用者量,就要適配到合適的android SDK。作為android開發人員來說要想獲得很好的
使用者體驗,往往要考慮到以下幾點:
一、 螢幕適配

在開發過程中最讓android開發人員蛋疼的便是螢幕適配問題,最常用的做法就是適配解析度較低的手機。雖然能夠適配到低分率的手機,但是如果相同的
布局放到高解析度的手機時。顯現的效果卻又大相徑庭,所以往往android開發人員會採用自訂控制項來適配手機螢幕,從而達到相同的顯示效果。往往很多人
都覺得蘋果手機的顯示效果非常的細膩。其實可以對比一下早期蘋果和android手機解析度,早期比較流行的iPhone4的解析度是960×640像素。 
iPhone4採用3.5英寸IPS螢幕,同時加入了新的Retina Display(視網膜)顯示技術,每英寸的面積裡有326個像素,通常電腦顯示螢幕的解析度為72ppi,
iPhone4的解析度為電腦的4倍多,所以顯示會非常細膩。android早期比較流行的解析度主要是480*320像素,從這可以便蘋果手機為什麼這麼貴的原因了。
就目前流行的android和蘋果來看,也是有很大的差距。下面是三星GALAXY S5、小米4和iphone6 plus的解析度。

 

 

 

可以看出作為android開發人員來說要兼顧到多少的手機適配從480*320像素到 1920x1080像素。而且這其中的像素過渡也是比較長的,這裡像素過渡主要是
不同像素的版本還是存在的。原因在於現在還有不少的國內手機廠商所用的螢幕都沒有一個穩定的版本,往往低端手機的螢幕解析度都是相對較差。而高端
手機的解析度都是比較高的。其實相對於android開發人員來說,蘋果開發人員還是比較幸運的,因為就目前蘋果手機過渡的幾個版本來看無非就是iphone4~iphone6。
所以對於螢幕適配,蘋果開發人員考慮的還是比較少的。這也是為什麼同一款應用,在android手機上的顯示效果比蘋果差的原因。其實還有一部分原因在於蘋果
本身,細心的可以發現蘋果對於ui的過渡處理都是優於andorid的。所以螢幕適配是影響android應用的原因之一。

 

二、android系統版本的適配
通過上面的android系統版本的市場佔有率來看,作為android開發人員肯定是要考慮到android系統版本適配的問題。一般就目前來說,作為android開發人員來說
一般適配的android系統版本主要是針對2.3.x以上的系統版本。其實早期的幾個比較經典的版本主要就是android2.2.x和2.3.x這兩個版本,所以雖然目前最高的
android系統已經發展到android5.0。但是仍然有不少的使用者還在使用2.2和2.3這兩個系統版本。其實這裡面也有手機製造商的原因,在android早期的時候手機製造
商們在手機裡面嵌入系統時。並沒有考慮到用於在拿到這款手機後系統升級的問題,因為他們寧願讓用於去重新買個最新系統版本的手機。也不願使用者在原有手機
的基礎之上進行系統升級,也有可能是早期的手機並不能正常的運行著些高版本的系統。其實每一版的系統都有著很大的改變,其中比較失敗的還是android3.0。因為
這個版本主要是適用於android平板。處於這個原因Google公司在2011年10月19日,倉促的發布了android4.0。該系統將手機與平板裝置進行整合,擁有全新的UI介面
和Linux核心,支援虛擬按鍵。其實我們可以對比下兩android系統版本所更新的內容,從中可以看出在基於低版本android系統開發和高版本系統開發對於應用有哪些影響。
以下對比出早期比較經典的android2.3和目前市場佔有率較高的android4.0這兩個版本的比較:

               android 2.3更新內容                                       android4.0更新內容              
 
               增加了新的記憶體回收和最佳化處理事件                          全新的UI介面     
               新的管理視窗和生命週期架構                                全新的Chrone Lite瀏覽器,支援離線閱讀、標籤頁、隱藏瀏覽模式等功能
               支援vp8和WebM視頻格式,提供AAC和AMR寬頻編碼,             功能
      提供了新的音頻效果器                                      更強大的圖片編輯功能
      支援自拍、SIP/VOIP和NFC(近距離無線通訊)                 內建照片應用堪比Instagranm,可以加濾鏡、加相框,進行360°全景拍攝,照片還能根據地點來排序
      簡化介面、速度提升                                        Gmail加入手勢、離線搜尋功能,UI更強大
      一鍵文字選擇和複製/粘貼                                   新增流量管理工具,可具體查看沒給應用產生的流量
      改進的電源管理系統                                        正在啟動並執行程式可以像電腦一樣進行相互切換
      新的應用程式管理方式                                      人臉之別功能,同時自拍可以進行面部解鎖
      增加In-app purchases功能                                  系統最佳化、速度更快                       
                                                                         支援虛擬按鍵,手機可以不再擁有任何按鍵
                   更直觀的程式列表
                   平板電腦和智能手機通用(這也是為什麼說android 3.0是一個失敗的產品原因)
                   支援更大的解析度
                   專為雙核處理器編寫的最佳化驅動
                   全新的Linux核心(android 4.0已經採用的Linux核心版本是3.0)
                   增強複製粘貼功能
                   全新的通知欄
                   更加豐富的資料轉送功能
                   支援更多的感應器
                   全新的3D驅動,遊戲支援能力得到提升
                   全新的Google電子市場(Google Play)
                   增強了案頭外掛程式自訂功能
從這兩個系統版本更新內容對比來看,早期的android系統與現在的高版本系統還是有很大的差距。這也是為什麼有的android應用做的這麼好,往往就是用到了
高版本的系統中的一些特性。其實對於android開發人員來說基於高版本的android開發又何不是一種福利,說個簡單的例子:android4.0中的動畫就可以採用屬性動畫
而在2.3中是不支援的。屬性動畫要比2.3中所採用的動畫更為簡潔,一句代碼即可搞定。但是往往我們需要考慮到使用者量的原因,就不得不採用低版本的android SDK來開發應用。

 

三、應用記憶體的處理
很多的android開發人員在開發過程中往往都注重在對於應用效果控制,而很少去管理自己的應用記憶體。使用過android手機的都有同一種感覺,那就是當手機所安裝的應用過多的時候
就會出現手機卡頓或死機的情況。而且當應用裝到一定的個數的時候往往就不能再安裝應用了,其實也有很多的android使用者抱怨說android太卡,運行程式特別慢。剛買的新手機還特
別流暢,當安裝的個數逐漸增多的時候。便會出現這種情況,就算把應用卸掉還是沒有以前那麼流暢。只有將手機恢復出廠預設值才會好一點,這也是為什麼有很多的android使用者轉而投向蘋果使用者
其實主要原因有幾下幾點:1、android系統是允許後台長時間進程,一般的android應用都會通過應用啟動後台服務和開機啟動服務。除非在記憶體非常緊張的情況下才會將一些長時間沒用過的
後台服務幹掉。這也是android和iphone的區別之一,iphone是不允許長時間後台服務的。在一定的時間內,系統會自動將服務幹掉不管你是否重要。這也是為什麼蘋果1G的運行記憶體用起來一點都不
卡的原因。就目前android裝置來看,1G的運行記憶體已經不能滿足使用者的需求了。2、android應用儲存在本地的資料量特別大,下面是的幾個應用安裝後所佔用的記憶體。大家所熟悉的QQ,所佔用的記憶體
是84M,單單就是資料存放區就是54.7M。可想而知如果裝的android應用越來越多,肯定是記憶體不夠的。3、卸載應用資料保留,android應用在安裝到手機之後往往會產生大量的資料。然而當使用者將軟體卸載後
這些資料並沒有像使用者想象的那樣消失,而是存在了本地。其實可以想象下裝了10應用,每個應用的資料佔用記憶體是50m,卸載後留下的資料就是500M。可想而知對手機的記憶體影響有多大。
有問題就是有需求,這也是為什麼會出現清楚殘留垃圾的軟體(360衛士,百度手機管家)

 

 


 

總結:以上分析純屬個人理論,具體的以實際為準。其實想要推動android的發展往往並不是手機製造商製造更好的手機,更需要的是android開發人員能夠做出更好的應用來吸引使用者。
只有這樣android才能立於不敗之地,我想這也是為什麼Google會將android開源。縱觀android的發展,不得不說是一個奇蹟的存在。為此,希望大家共同為android的發展努力。

是誰毀了我們的安卓應用?

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.