Android開發技巧:軟硬件的巧妙整合
如前所述,對眾家開發廠商而言最大的挑戰其實在于,如何將自己理想的產品訴求,與Android系統巧妙結合成一個功能完整并使用流暢順手的產品,這其中牽涉了不同技術間的整合與運用。在此我們便根據其多年的測試與研究經驗,歸納出五大Android相關設備在技術整合上的重要環節:
一、Linux驅動程序的導入
由于Android是根源于Linux所延伸出來的操作系統,因此各種關鍵功能的驅動程序也必須要能順利的寫入其中,舉凡像是字符設備、存儲器的空間配置、中斷處理、網路通信、螢幕顯示或是連接接口像是USB與PCI的驅動程序,這些可能是自行撰寫、或是來自不同組件廠商的驅動程序,都必須要能被導入到Android系統,并維持良好穩定的效能表現。
二、系統單芯片的優化處理
對廠商而言,開發一款Android設備,不僅僅只是將所有零組件組合成為一個產品那么容易,最大的學問便在于將系統單芯片(System-on-a-chip,SoC)、各種新技術和Android系統進行整合,SoC涉及像是Dalvik Virtual Machine、OpenGL、V8、Webkit Engine等上層的演算,與Android間的結合便必須透過不斷的嘗試與驗證,才能研發出既符合成本效益、又有良好效能的優化產品。目前市面上有些SoC廠商已針對Android系統的特性,提供整合過的SoC平臺,將藍牙、相機或上網等常用功能模組預先寫入,減少終端成品廠商費力整合開發的時間,但對廠商而言,這樣的預先整合是否適合自身產品,以及是否需要再作更細致的修改,則又是更困難的課題。
三、新技術的移植
隨著技術的快速發展,更多新興的技術規格也逐漸應用在手機等手持設備上,以手機為例,已經從過去以撥打電話為主要功能,轉變為擁有各種多樣化用途的產品。像是觸控技術讓消費者可以透過手指的滑動傳送指令甚至是具備多點觸控的支持、Wi-Fi模組提供隨時無線上網的可能、通用圖形處理器(General-purpose computing on graphics processing units,GPGPU)則能以并行方式透過圖形處理器來執行通用計算任務、Android 2.3版所支持的NFC近場通信技術,以及更高階的相機模組等等,背后都有各自的驅動程序與軟件技術,也必須要與Android系統相結合使用。
四、效能表現的穩定
盡管上述這些技術不斷推陳出新,但也都不能因此而犧牲設備原本的效能表現,讓處理速度因此變慢或造成使用上不順暢的狀況。除了采用更好的硬件設備外(例如現今處理器的時脈已邁向1GHz),更需要操作系統的支持,像是如何在多任務運作的狀況下維持程序執行速度以及系統滿載的處理等等,都必須要透過軟件面的奧援。也就是說,一臺Android設備除了要能將各種功能與技術收納起來、將軟硬件整合外,更必須同時注重它在效能上能否維持應有的水準,以提供使用者在操作上流暢易上手的感受。
五、低電耗設計
Android的設計概念主要是應用于便攜式設備上,目前市面上可見的像是平板電腦與智能手機等。對這類產品而言,電池續航力的好壞可說是影響消費者使用感受的關鍵之一,試想,若是一臺智能手機的待機時間過短,而使用者在外時又無法隨時充電使用,不能即時的連網查詢資料或執行其他手機功能,這樣的產品便失去了它作為便攜式移動設備應有的便利性。追根究底,良好的待機時間除了需仰賴高容量的電池以提供充足電力之外,另一個重點就是設備本身在被使用執行時能否作到低電耗設計。Android設備讓使用者能透過各種多樣化的應用程序,來達到各種不同的使用目的,舉凡像是單純上網、觀看新聞、郵件推播或是游戲等等,各種不同功能的程序都能透過自由下載使用,也由于其多任務處理與讓程序背景執行的能力,更讓降低耗電量成為開發者不可輕忽的一項課題。
評論