谷歌Android應用程序組件全解析
谷歌的Android經常會常帶一些Android應用程序,目前使用的最多的為:網頁瀏覽器,但除了網頁瀏覽器外還有:電子信件收發的用戶端程序、簡訊收發程序、日歷/行事歷、地圖、聯系簿/通訊錄等。
不過,應用程序不是Android的重點,即便有應用程序也以基礎性、示范性用意為多,另外操作系統也不是重點,重點集中在中介軟件層方面,即是應用程序框架、函式庫、應用程序執行環境等。先說明應用程序框架,Android本身已在框架中提供許多軟件組件,不過這并不表示所有的應用程序一定要呼用(Call,呼叫。
呼用,中國內地方面稱為:調用)Android所提供的組件,程序設計師在開發Android平臺所用的應用程序時,也可以順帶開發新的軟件組件,并將該軟件組件放入Android的應用程序框架中。
如此,除了原撰寫的應用程序可以呼用該軟件組件(或稱:應用程序界面,API)外,也可以讓其它的應用程序來呼用該組件。另外,新增、新撰寫的軟件組件并不一定要是新的功效,也可以用來取代或暫代Android應用程序原有就具備的軟件組件。
雖然新組件可以取代或暫代舊組件,但不是所有的組件都可以取代,例如安全(Security)方面的功能,就強迫只能用Android平臺現有組件。不能被替換成軟件公司、程序設計師自己開發的。此外,軟件組件替換,不僅可由應用程序來決定,也允許使用者自行決定。
若更進一步了解,Android應用程序框架中的軟件組件主要有10個,如Activity Manager(活動管理員)、Window Manager(視窗管理員)、Resource Manager(資源管理員)等,在此無法詳述每個組件的功效,因此以下挑數個重點組件來說明。
舉例來說,Content Providers(內容管理員)負責應用程序與應用程序間的資料存取傳遞,例如某一個應用程序可以去存取通訊錄應用程序內的聯系人資料。或者呼用Resource Manager可存取的非程序碼資源,例如:當地性設定(該地貨幣、語言、時間格式)、圖象...等。
再者,應用程序若呼用Notification Manager(通知管理員),則可以在狀態列(Status Bar)的地方設計出應用程序自有的警示(Alert)訊息。至于Activity Manager則提供應用程序的生命周期管理。
Android平臺的操作系統用的是Linux,其核心版本為2.6版,Android所用的Linux核心,其包含的功效包括:安全(Security)、存儲器管理(Memory Management)、行程管理(Process Management)、網絡堆疊(Network Stack,中國內地方面稱為:網絡堆棧)、驅動程序模型(Driver Model)等,另外也在前述的軟件堆疊與硬件間建立起一個抽象層(Abstraction Layer)。
最后,筆者整個檢視了Android平臺,此平臺的設計很合乎Google過往以來的風格,Google講究功效單純但功效必須相當強悍,Google的查找引擎即是如此,查找頁面永遠就是一個文字輸入欄,但查找結果相當精準、豐富。同樣的,Android平臺與今日一般智能型手機的軟件平臺相比,其功效豐富性并不如一般智能型手機,甚至只要32MB的存儲器用量就能夠執行。
很明顯的,Google Android應用程序的重點在于最低硬件使用量、最開放標準的軟件架構及平臺、及讓手機內各項基礎軟件的總花費成本能降至最低,所追求的是最小但也最一致的共通點。
一旦手機有了最小的一致共通點,Google的網絡服務及軟件就能大幅發揮,Google除了Internet服務外也力推各種輕量性軟件,由于輕量特性,所以其軟件可以快速移轉到Android手機上執行,并與其Internet服務相呼應。
當然,Android不僅對Google有利,對應用程序開發商、手機消費者、手機服務營運商...等,也同樣呈現利多,一旦Android成為極廣泛通行的手機軟件平臺,應用程序業者就可以有新的軟件銷售舞臺,且依據Apache v2授權方式,即便應用程序業者以Android平臺為基礎撰寫程序,其程序的原始程序碼也不用公開,保證其商業權益。
另Android更有助于降低手機軟件成本,現有智能型手機內的各類軟件都要收費,如操作系統、文件閱讀器、媒體播放器...等,而Android也具備這些基本功能,重點是分毫不取,如此,將帶給持續收取手機隨附軟件授權費的業者降價壓力。
不過,即便降價也很難因應壓力,軟件業者相互間有門戶之見,而Android的另一項特點是軟件平臺的標準化,雖然各軟件業者多少也發展出自有的手機軟件平臺,但多半還是要付費,且標準號召性不如Android。
既然手機軟件成本降低,消費者就可以買到更便宜的手機,而手機通訊服務的營運商(如:遠傳電信、中華電信等)自然也能提供更低廉的綁約方案,所以Android對手機基礎軟件業者的傷害最大,但卻對絕大多數人有利。
【編輯推薦】