Android 崛起讓開發者深陷“痛苦矩陣”
在今年 5 月,Google Play 收獲了自己的 480 億下載次數,而總共的應用數量已經超過了 48 萬款,對比的是蘋果的 App Store 有著超過 500 億次的下載,應用數量超過了 61 萬。在應用數量和下載次數上看,Android 和 iOS 的差距并不大。
接下來是另外一個好消息,Android 手機在智能手機市場上已經占據了 79. 5 % 的份額,處于絕對領先位置,Android 機型數量高達 1.1 萬種。從數據上看,真是一派欣欣向榮的景象。
盛世之下,必有隱憂。隨著 Android 的繁榮,開發者不得不面對一個巨大的問題。面對多版本系統,多品牌多尺寸多種硬件規格的 Android 手機對于開發者來說,意味著必須要花費更多更大的時間和精力去調試自己的程序。這個問題多年前就被提起過,但現在正是得到報應的時候。
Wierd 把這種對于各種 Android 版本和設備的適配稱之為“痛苦矩陣”,意指為了確保代碼在設備上正常運行,而不得不忍受適配過程中的痛苦。
Todd McKinnon,一個企業管理登錄驗證公司 Okta 的聯合創始人和 CEO 說:
“當你決定開發 Android 應用時,首先你就得面對 6 個主要的平臺版本,這還不夠,主要版本之下還有細分版本,你必須去面對各種設備,大屏幕的,小屏幕的。”
這當然是非常痛苦的,就像上世紀 90 年代程序員們要面對各種版本的 Windows 系統,還要盡可能的去適配更多的硬件設備一樣。相比于在 iOS 上開發應用,Android 開發者面臨著更復雜的局面。iOS 6 升級到 iOS 7 已經讓許多 iOS 開發者分身乏力,很多開發者表示將放棄 iOS 6,主攻 iOS 7 平臺。
為了減少開發難度,同時也為了應用體驗,不少 Android 開發者不得不做出一些妥協。McKinnon 最終決定只支持當時最新版本的 Android 系統,這就意味著他必須放棄另外一批大部分的用戶。根據調查,當時大約只有 37 % 的 Android 用戶是使用最新版本的 Jelly Bean 系統。
很多開發者開發的節奏是先上線 iOS 版本,然后緊接著 Android 用戶便要求開發 Android 應用,另一方面,面對幾占智能手機市場八成的 Android 手機用戶,開發者也是不愿放棄的。市場越大,碎片化越嚴重,這樣的矛盾暫時無法解決,開發者也只得默默面對。
昨天,我們也寫到,Android 新一代領導者面臨著諸多挑戰,包括諸如生態系統碎片化的老問題。
Nirav Tolia 的團隊用了不到 4 個月就推出了自己的 Android 應用,為了從 Android 2.2.3 版本支持起,也就是要占據 95 % 的 Android 市場,他不得不放棄原生的 Android 代碼,而繞道去用網頁技術。
而像 Symantec 和 Mozilla 這樣的公司不得不在 200 多種設備上測試自動化軟件。Trent Peterson,AppThwack 的聯合創始人說:
“很明顯,Android 系統有問題,你為了獲取這個開放平臺而不得不去面對成噸的設備。”