移動Widget指運行在移動終端上的Widget,他不僅可以獨立于瀏覽器運行,有效地利用手機屏幕,而且可更快速、直接、方便地訪問移動互聯(lián)網(wǎng),從而給手機用戶帶來良好的呈現(xiàn)方式和互聯(lián)網(wǎng)體驗。移動Widget具有小巧輕便、開發(fā)成本低、潛在開發(fā)者眾多、與操作系統(tǒng)耦合度低及功能完整等特點,并且由于運行在移動終端上,移動Widget可實現(xiàn)個性化的用戶界面,提供眾多適合的移動場景的應(yīng)用,使用戶更容易獲得有價值的信息。
在當(dāng)今市場,不管是移動終端廠商、移動服務(wù)提供商,還是移動運營商,都不遺余力地推進移動Widget技術(shù)的研究、開發(fā)和推廣,力圖最大程度地利用移動Widget價值,搶占更大的市場份額。但是由于不同移動Widget平臺大都采用了不同的標(biāo)準(zhǔn),相互之間無法完全兼容,使得Widget應(yīng)用的第三方提供商需要為一款業(yè)務(wù)應(yīng)用制作多種不同Widget以適應(yīng)不同的Widget平臺。文章通過對移動Widget主流標(biāo)準(zhǔn)和平臺之間的差異性分析,為實現(xiàn)移動Widget應(yīng)用在各個主流平臺上兼容運行提供依據(jù)。
1 移動Widget主流標(biāo)準(zhǔn)
1.1移動Widget主流標(biāo)準(zhǔn)介紹
目前與移動Widget相關(guān)的標(biāo)準(zhǔn)主要有:萬維網(wǎng)聯(lián)盟(W3C)制訂的W3C Widget 1.0標(biāo)準(zhǔn)、聯(lián)合創(chuàng)新實驗室(JIL)制訂的JIL Widget標(biāo)準(zhǔn)、開放移動終端平臺組織(OMTP)制訂的BONDI標(biāo)準(zhǔn)、中國通信標(biāo)準(zhǔn)化協(xié)會(ccsA]制訂的移動Widget標(biāo)準(zhǔn)。
W3C Widget 1,0是由W3C制訂的。針對Widget應(yīng)用,W3C主要擬定了以下標(biāo)準(zhǔn):
·Widgets 1.0:The Widget Landscape
·Widgets 1.0:Requirements
·Widgets 1.0:Packa西ng and Configuration
·Widgets 1.0:Digital Signature
·Widgets 1.0:Automatic Updates
·Widgets 1.0:APIs and Events
各標(biāo)準(zhǔn)的關(guān)系如圖1所示:
JIL標(biāo)準(zhǔn)是聯(lián)合創(chuàng)新實驗室制訂的針對Widget的開放應(yīng)用程序編程接口(API),主要包括API規(guī)范和技術(shù)格式規(guī)范。JIL標(biāo)準(zhǔn)更加關(guān)注開放API接口標(biāo)準(zhǔn)。目前,中國移動的基于瀏覽器技術(shù)的應(yīng)用引擎(BA E)平臺支持JIL標(biāo)準(zhǔn),而其他Widget軟件提供廠商也將JIL標(biāo)準(zhǔn)作為下一階段的研發(fā)方向之一。
BONDI標(biāo)準(zhǔn)是OMTP組織制訂的針對Widget引擎或者可兼容瀏覽器的開放API接口。BONDI標(biāo)準(zhǔn)的主要工作體現(xiàn)在以下兩個方面:更為嚴(yán)格的終端安全性規(guī)定和更為全面、豐富的Widget API~1。BONDI標(biāo)準(zhǔn)更加貼近運營商需求,但是目前支持BONDI標(biāo)準(zhǔn)的終端和Widget廠家較少,W3C已經(jīng)考慮將BONDI標(biāo)準(zhǔn)納入其規(guī)范范圍。
CCSA參加Wid~t工作相對較晚,工作主要集中在移動Widget標(biāo)準(zhǔn)方面,由中國幾大運營商牽頭編寫。CCSA的標(biāo)準(zhǔn)充分反映了中國運營商的需求,運營商更多地關(guān)注Widrt如何建設(shè)、如何運營。目前罕有支持此標(biāo)準(zhǔn)的廠商。
1.2移動Widget主流標(biāo)準(zhǔn)的差異性對比分析
本章節(jié)針對移動Widet的相關(guān)標(biāo)準(zhǔn)從主要內(nèi)容、側(cè)重平臺、API、優(yōu)缺點、支持的平臺等方面作為主要切人點,詳細分析差異性。
(1)各標(biāo)準(zhǔn)規(guī)范的主要內(nèi)容:W3C Widgets 1.0主要規(guī)范了Widget內(nèi)容、打包、配置、簽名和API等;JIL標(biāo)準(zhǔn)主要規(guī)范了Widget打包和AH:BONDI標(biāo)準(zhǔn)主要規(guī)范Widget打包、安全和API。
(2)各標(biāo)準(zhǔn)側(cè)重平臺情況:W3CWidgets 1.0主要側(cè)重于桌面終端;JIL標(biāo)準(zhǔn)側(cè)重于移動終端;BONDI標(biāo)準(zhǔn)側(cè)重于針對Widget引擎或者可兼容瀏覽器的開放API接口;CCSA側(cè)重于移動終端。
(3)各標(biāo)準(zhǔn)API規(guī)范情況:W3C的Wider 1.0草案定義了基本的AH,其中僅包括一個對象,對象中包含一個openURI方法和若干個基本域;JIL標(biāo)準(zhǔn)定義了一套較完整的針對移動設(shè)備的API;BONDI標(biāo)準(zhǔn)繼承了W3CWidget的Am,還添加了一套較完整的針對移動設(shè)備的API。


(4)各標(biāo)準(zhǔn)優(yōu)缺點:目前支持W3C Widgets 1.0的軟件廠商最多,但其提供的API相當(dāng)滯后;JIL標(biāo)準(zhǔn)由運營商聯(lián)合創(chuàng)建,在亞洲、非洲、歐洲和北美洲擁有超過10億的移動用戶,但是符合BL規(guī)范的Widget應(yīng)用很少;BONDI項目已得到了全球眾多運營商及手機制造商的支持,近期獲得了LMo基金會的認(rèn)證,但符合規(guī)范的應(yīng)用極少;而CCSA最明顯的缺點就是支持他的移動運營商、手機設(shè)備較少,不足以達到大規(guī)模應(yīng)用。
(5)各標(biāo)準(zhǔn)支持平臺情況:支持W3C Widgets 1,00的廠商或平臺主要包括Opera、VodMone、Nokia、Palm、WindowsMobile平臺;支持BL標(biāo)準(zhǔn)的廠商或平臺主要包括LG、RIM、Samsung、Lmo、Sharp、OPhoneWindows Mobile、$60等平臺;支持BONDI標(biāo)準(zhǔn)的廠商或平臺主要包括NF Widg~s平臺;CCSA支持的平臺目前較少。
(6)各標(biāo)準(zhǔn)的安全性:W3C標(biāo)準(zhǔn)制訂了專門的數(shù)字簽名文檔《Widgets 1.0:Digit~Signature》;JIL標(biāo)準(zhǔn)的安全概況則在每一種安全域上為每一個API作了簡單的適配;BONDI標(biāo)準(zhǔn)采用Widgets 1.0數(shù)字簽名,其安全模塊能容納JIL的相對簡單的安全模塊。
從以上對比分析可知,W3C為Wid~t制訂了比較完善的Widget標(biāo)準(zhǔn),包括打包、數(shù)字簽名、API等。但是由于W3C的WidgetAPI相對滯后,不能滿足移動Widget各種豐富應(yīng)用的要求,因此大部分廠家都對其進行了擴展,導(dǎo)致不同廠家的移動Widget應(yīng)用部分互不兼容。OMTP、CCSA、JIL等組織結(jié)合自身特點,從不同層面對Wider技術(shù)進行了相關(guān)規(guī)范性的工作,例如,JIL標(biāo)準(zhǔn)更加關(guān)注開放API接口標(biāo)準(zhǔn),而OMTP旨在制訂能被業(yè)界廣泛接受的標(biāo)準(zhǔn),并主要制訂針對Widget引擎或者可兼容瀏覽器的開放API接口。移動Widet相關(guān)規(guī)范的多樣性,加大了移動Widet兼容的難度。
2 移動Widget平臺的研究
2.1主流移動Widget平臺介紹
目前移動Widget開發(fā)平臺種類繁多,主流移動Widget平臺按照技術(shù)規(guī)范可以分為富互聯(lián)網(wǎng)應(yīng)用(RIA)型、標(biāo)準(zhǔn)WEB技術(shù)型和其他型平臺,詳細分類如表1所示。
RIA型移動Widget開發(fā)平臺是基于JavaFX moile或Flash Lite的移動Widget開發(fā)引擎,簡化并改進了移動Widget應(yīng)用程序的用戶交互,使得應(yīng)用程序可以提供更豐富、更具有交互性和響應(yīng)性的用戶體驗。
基于標(biāo)準(zhǔn)Web技術(shù)的移動Widget平臺是通過HTML語言來呈現(xiàn)內(nèi)容,層疊樣式表(CsS)來定義格式,Javascript語言來表現(xiàn)邏輯。目前大多數(shù)的主流移動Widget平臺都屬于標(biāo)準(zhǔn)的WEB技術(shù)型。這是由于采用標(biāo)準(zhǔn)Web技術(shù)來開發(fā)移動Widget應(yīng)用具有如下優(yōu)點:開發(fā)語言相對簡單;潛在的開發(fā)者數(shù)量眾多;海量、免費的互聯(lián)網(wǎng)應(yīng)用可在短時間內(nèi)轉(zhuǎn)換成移動Widget應(yīng)用。
Google Android的移動Widget也相應(yīng)被選擇作為其他移動Widget平臺的主要代表。Google Android通過Java語言構(gòu)建了Android上的移動Widget框架,并非采用一般的WEB技術(shù)。
2.2移動Widget平臺差異性分析
在目前的情況下,針對某一移動Widget平臺開發(fā)的移動Widget應(yīng)用的一個重要限制是:不能不加修改地運行在另一移動Widget平臺之上,無法實現(xiàn)無縫移植。這表明不同移動Widget平臺之間存在一些差異。這些差異則主要體現(xiàn)在移動Widget引擎、開發(fā)和打包方式3個方面。
(1)各移動Widget平臺之間在運行環(huán)境方面一般都有特有的移動Widget引擎,例如采用系統(tǒng)內(nèi)置方式、通過插件的形式下載到手機上或是采用基于移動瀏覽器的方式等。
f21在相關(guān)開發(fā)方面,不同移動Widget平臺支持的HTML/CSS/JavaSeript版本、各平臺提供的功能接口、支持的擴展功能、XML標(biāo)簽與元數(shù)據(jù)以及安全模型也不盡相同。
(3)對于打包方面,現(xiàn)有的移動Widget平臺采用的通用方法就是用ZIP文檔的形式打包Widget資源。但是各平臺在打包規(guī)范上也存在著差異性:不一致的文件擴展名、不一致的包結(jié)構(gòu)和未定義的Zip規(guī)范等。
盡管目前各種移動Widget平臺實現(xiàn)的技術(shù)原理、開發(fā)所用的語言、參考技術(shù)標(biāo)準(zhǔn)、甚至功能特性、用戶體驗都存在差異,但在某些核心理念和用戶目的上或多或少有一定的共識:例如,便于應(yīng)用開發(fā),有更出色、靈活的用戶體驗,力求支持跨平臺運行,面向小工具、小應(yīng)用以及Web應(yīng)用等。
2.3移動Widget平臺兼容性分析
目前要實現(xiàn)移動Widget兼容運行至少需要滿足兩個條件:首先,平臺使用的移動Widget引擎采用相同的技術(shù),并且支持程度不能有太大的差異;其次,平臺應(yīng)遵循統(tǒng)一的規(guī)范或標(biāo)準(zhǔn)。例如:基于WEB技術(shù),采用W3C制訂的Widget標(biāo)準(zhǔn)草案的Nokia$60、Windows Mobile和Opera移動Widget平臺,他們之間的移動Widget應(yīng)用就存在一定的通用性。
從操作系統(tǒng)商、服務(wù)提供商以及運營商對移動Widget的關(guān)注,可以表明移動Widget在實際應(yīng)用中的影響正日益擴大。移動Widget實現(xiàn)兼容運行,已成為移動互聯(lián)網(wǎng)研究的熱點。中國移動設(shè)計并開發(fā)的BAE目前支持Symbian、Windows Mobile以及開放式手機操作系統(tǒng)(OMS)等主流移動終端智能平臺。BAEWidget引擎屏蔽了手機操作系統(tǒng)的差異性,實現(xiàn)了移動Widget“一次開發(fā),到處運行”的跨平臺兼容運行。
隨著移動Widget逐漸成為移動互聯(lián)網(wǎng)業(yè)務(wù)的重要呈現(xiàn)形式,在不久的未來,移動Widget必將能夠暢通無阻地運行在各個移動Widget平臺之上,發(fā)揮移動Widget的價值。
3 結(jié)束語
文章介紹了幾種主流的移動Widget標(biāo)準(zhǔn)和平臺,重點從技術(shù)基礎(chǔ)、打包、配置、擴展API接口和安全規(guī)范這些方面對比分析了他們的差異性,并且以此為依據(jù)深入探討了移動Widget平臺之間的兼容性。從文章的分析中可以看出,移動Widget的標(biāo)準(zhǔn)和平臺紛繁多樣,要真正實現(xiàn)移動Widget的跨平臺兼容運行,并且讓移動Widget擁有更加良好的應(yīng)用前景,需要各大標(biāo)準(zhǔn)化組織的積極努力和各大移動Widget平臺廠商之間的協(xié)同發(fā)展,以營造出良好的移動Widget生態(tài)環(huán)境。