行動電話多媒體應用的系統平台趨勢
前言:在行動電話市場,大多會將智慧型手機與功能性手機採取相對明確的區隔,例如,可讓使用者自行擴充軟體與應用功能的機種,即為智慧型手機,採開放性系統設計,而功能性手機則會以預設功能為主,或提供可讓使用者加載Widget的延伸功能,提供行動電話用戶可用的擴充功能...
本文:
在行動電話市場中,對於產品線的分類與區隔多半採取相當明確的方式處理,以智慧型手機與功能性手機最大的區隔,其實就在於核心系統的開放性與否,例如,Android、Symbian、Windows Mobile等多種平台,就屬於相對開放的行動電話系統,架構於此系統的行動電話,即可提供使用者自行定義功能、安裝軟體與擴充應用的多元彈性,就也是典型的開放系統平台的行動電話架構。
至於,部分也是打著可以外掛Widget的行動電話,而非採取開放性作業系統的手機,也多半會被歸類在功能性手機。此類行動電話大多基於BREW或J2ME基礎,藉由採取以JavaScript為基礎開發的應用軟體,整合各式Web Service應用,則多數仍為功能性手機。
同樣的兩樣產品,在消費者端的區隔就顯得較為模糊,即便在作業系統部分,功能性手機多半採行 RTOS(Real-Time Operating System),可能在檔案管理部分著墨較不深,或是採嵌入式系統設計,由於系統已與硬體各項功能緊密結合,不僅第三方的程式開發者不易介入功能性手機的應用軟體市場,使用者所能取得的軟體應用資源即相對受限,即便是先前提到的透過Widget包裝過的Web Service,但應用功能會受限效能與硬體涉入程度較低的影響,在應用彈性也會比開放系統的軟體功能顯得較為薄弱許多。
第三方應用軟體效能與數量 智慧型手機的競爭關鍵
智慧型手機除在系統在對於第三方軟體的開放特色外,在近來頗為熱門的Android手機,其系統架構採取開放態度,讓不同硬體商可以將系統平台導入所研發的商品中,對於第三方軟體開發商而言,等於可以降低將應用程式針對不同品牌手機進行最佳化的成本負荷,加速軟體開發速度。
近來智慧型手機在作業系統端,朝向整合網路應用方向前進,而底層的作業系統亦整合Flash多媒體與影音播放功能,甚至開發者可在系統取得Open-GL之類的3D加速資源,當應用軟體若有採行3D圖型介面或繪圖需求,也可在系統端的支援下,讓軟體可採取較高的運行效率,呈現更美觀的多媒體互動效果。
而程式開發者可以透作業系統的API(Application Programming Interface),在友善的開發環境中,於程式中取用現成的系統資源進行整合,或是建構可基於對應系統要求的軟體安裝、卸載機制,讓手機在安裝第三方軟體或是多媒體應用應用時,可得到更完美的操作體驗。
軟體擴充性 為功能性手機的應用限制
目前業界常見的功能性手機,其多項外加應用軟體,多半建構在BREW(Binary Runtime Environment for Wireless)或J2ME或Java ME(Java platform, Micro Edition)上,此兩種開發方式其實有近似的限制存在。以BREW為例,BREW為Qualcomm提出為解決3G系統的軟體開發解決方案,相關程式可以利用C或C++語言撰寫,也能以BREW再向上建構Java Virtual Machine(JVM),應用彈性相當大。
BREW在應用程式執行環境(AEE)建構方面,其實是提供一個相當精巧的軟體介面層,硬體廠商可以輕鬆將之整合於各自開發的產品中,讓功能性手機可以支援BREW API和執行環境的基礎條件。由於AEE所佔用的系統資源(隨機記憶體、快閃記憶體)極小,因此特別適合以成本優先考量的入門(low end)定位產品。
從多媒體應用的系統開發角度歸茶,BREW有許則有相當多的優點,例如BREW API 所支援行動電話超越J2ME API,其API亦較J2ME簡潔,甚至於在BREW控制圖型也相對較容易許多,其中BREW 2.0版本,已可直接存取螢幕緩衝區擷取視訊資料。而BREW是較J2ME更更底層的技術基礎,加上Qualcomm預設將之緊密與CDMA結合,在通訊應用方面,BREW擁有更快的反應速度。在程式開發方面,BREW應用程式可採物件導向程式設計(Object-oriented programming)。
但BREW也非全然沒有缺點,相較J2ME來說,BREW在IDE平台支援較不多,不像J2ME擁有Eclipse、Netbeans...等熱門IDE開發平台支援,在可用元件方面J2ME的資源也相對較多,在不同區域市場,也有相當明顯的差異存在。
J2ME開發條件相對較低 多媒體應用開發效益高
J2ME(或Java ME)與Java SE、Java EE為Java技術三大版本,也是同樣通過JCP(Java Community Process)制訂的。 J2ME以往是作為機上盒、行動電話之類的嵌入式消費性電子所提供的Java語言平台,其包含虛擬機器和Java API。
在業界應用方面, J2ME 最常用於行動電話遊戲軟體開發,因為Java ME程式開發可在PC平台上進行模擬操作與實際運行,開發成果可以很簡單的轉移到研發設備中,讓整體應用軟體在規劃、測試、開發、遞送的相關成本可以大幅壓低,應用環境也不僅限行動電話。
至於J2ME的開發條件相對較低,通常不需要特別的開發工具,開發者只要在PC平台 安裝Java SDK,再搭配同樣是採免費下載的Sun Java Wireless Toolkit,就可以著手進行J2ME的程式編寫、編譯與測試,另主流手機製造商為了讓第三方程式開發商的J2ME軟體再各自的硬體運行更為穩定,Nokia與Sony Ericsson也都有免費釋出自己的SDK,供程式開發者應用於軟體研發上。
智慧型行動電話整合更完善的應用環境發展
而反觀智慧型電話市場,其行動電話系統則視硬體廠商則有很大的不同,例如採行Android平台,其開發工具與IDE與J2ME系統有近似的條件,加上有Google的開放資源態度,目前已經成為手機多媒體應用發展相當旺盛,其後勢不可輕忽,而以多媒體應用著稱的iPhone行動電話,Apple針對其系統平台提供具備低進入門檻的iPhone SDK,搭配Apple的XCode IDE環境,測試、模擬、軟體發布都由Apple強勢整合,加上iPhone已具備一定程度的市場規模,其第三方軟體的開發與獲利模式自成一格。
同樣的,iPhone的應用程式軟體商店模式,相對在推廣軟體分享、販售、安裝與應用有相當大的效益,相對的在此進入時機較遲Android、Windows Mobile與RIM等,也嘗試建構自己的線上軟體商店,可以透過如電信帳單支付、信用卡線上支付或是免費遞送平台的多元管道,取代以往使用者必須自行下載、安裝、設定的煩瑣操作,也讓智慧型手機的多媒體應用環境更加完整多元。