PhoneGap

PhoneGap

PhoneGap是一個採用HTML,CSS和JavaScript的技術,創建移動跨平台移動應用程式的快速開發平台。它使開發者能夠在網頁中調用IOS,Android,Palm,Symbian,WP7,WP8,Bada和Blackberry等智慧型手機的核心功能——包括地理定位,加速器,聯繫人,聲音和振動等,此外PhoneGap擁有豐富的外掛程式,可以調用。 業界很多主流的移動開發框架均源於PhoneGap。較著名的有Worklight、appMobi、WeX5等;其中WeX5為國內打造,完全Apache開源,在融合Phonegap的基礎上,做了深度最佳化,具備接近Native app的性能,同時開發便捷性也較好。

定義

Phonegap是一款開源的開發框架,旨在讓開發者使用HTML、Javascript、CSS等Web APIs開發跨平台的移動應用程式。原本由Nitobi公司開發,現在由Adobe擁有。

它需要特定平台提供的附加軟體,例如iPhone的IOS SDK,Android的Android SDK等,也可以和DW5.5及以上版本配套開發。使用PhoneGap只比為每個平台分別建立應用程式好一點點,因為雖然基本代碼是一樣的,但是你仍然需要為每個平台分別編譯應用程式。

起源

第一段PhoneGap代碼是在2008年8月的iPhoneDevCamp上寫成的。創建它的一個主要動力是基於一個幾乎每一個單獨的iPhone開發新手都要面對的簡單事實:Objective-C是一個對Web開發人員來說非常陌生的環境,並且Web開發人員的數量遠遠多於Objective-C開發人員的數量。

問題是,是否有人可以開發一個框架,讓Web開發人員可以利用他們所有的HTML、CSS和JavaScript知識,而且仍舊可以同iPhone的重要本地應用程式(如攝像頭和通訊錄)互動呢?

就在那一年,PhoneGap獲了獎並開始支持Android平台,對人數不斷增長的移動開發人員變得越來越有用,這些人員需要在更多的平台上獲得代碼支持。

狀態評估

截止 2014年5月14日,phonegap的最新版本為3.4.1 。PhoneGap在多個主要的智慧型手機設備上提供了以下功能的支持:

•加速計

•攝像頭

•羅盤

•通訊錄

•文檔

•地理定位

•媒體

•網路

•通知(警告、聲音和振動)

•存儲

如果正在為iPhone或Android設備做開發,那么這些功能都是支持的。如果是為BlackBerry、webOS、Windows Phone 7、Symbian或Bada設備做開發,則有些功能就不支持了(例如,在Windows Phone 7上,就不支持攝像頭、羅盤或存儲功能。老版的BlackBerry型號支持地理定位、通知以及網路的可達性,但僅此而已)。

未來發行版本的路線圖包括對Contact API的升級,將其更新到最新的W3C規範。此外,計畫支持以下功能(這只是嘗試,而非完整的路線圖):

•加密

•Websockets

•Web通知

•HTML媒體捕獲

•Calendar API

•國際化支持

•命令行編譯

•網損/恢復事件

版本

2011年7月29日,PhoneGap發布了1.0版產品。PhoneGap 1.0的推出,該公司表示,重點是訪問本地設備的API。

其他的改進包括:

API的整體穩定和“可插拔”的架構W3C DAP API的兼容性聯繫人API遠程調試工具一個新的統一的橋接口,使增加平台和平台擴展容易改進的外掛程式開發流程。

2011年10月1日,PhoneGap發布了1.1.0版產品。

新功能:

1.支持黑莓playbook的WebWorks併入。

2.orientationchange事件。

3.媒體審查(使用HTML5的音頻和/或正常化的API)。

2012年3月6日,PhoneGap發布了1.5.0版產品。

2013年1月 PhoneGap發布了2.3.0產品

Adobe已經發布PhoneGap2.3.0完全支持Windows Phone 8。它還包括支持inappbrowser這使您可以在全螢幕模式觀看視頻檔案。新版本提供了一個在檔案傳輸失敗能夠刪除不完整檔案的新特性,還包括外掛程式查詢urlisallowed()方法抽象。
PhoneGap2.3.0包括輔助腳本轉換cordova.plist向config.xml和包括了幾個bug修復,詳細的官方更新日誌。該device的name屬性已被否決所有平台和一個新的屬性被命名為device.model已被釋放來取代它。
該inappbrowser具有相同功能的childbrowser,包括事件的支持和不使用軟體白名單。
PhoneGap2.3.0有固定的例外而搜尋郵件聯繫人。它也修正了一個問題,而將照片從https地址聯繫和科爾多瓦的命令,在他們的空間路徑。

功能

1、兼容性。完全做到了written once, run everywhere。

2、標準化。PhoneGap用W3C標準,特別標準,Web App直接一字不改就能運行。尤其是和JQ Mobile結合在一起使用,實在是威力無窮啊!

3、用JavaScript+HTML5。你說這和iOS以及Android的代碼加XML有區別嗎?我看都差不多。

當然目前PhoneGap缺陷還是蠻多的,比如運行速度慢,UI反應延時——這是個致命傷。不過嘛,這種問題是會隨著技術的進步而消失的。對此問題,國內已有WeX5開源框架專門對PhoneGap做了進一步深度最佳化,基於WeX5框架開發出來的App體驗已經接近原生。它的優勢是無與倫比的:開發成本低——筆者個人估計,至多是Native App的五分之一吧。偉大的政論家托馬斯·約瑟夫·登寧,資本主義為了100%的利潤,它就敢踐踏一切人間法律。跨平台的流行是不可避免的。當然,Native App永遠會有一席之地,比如高端遊戲.

公司近況

電腦軟體公司Adobe 2011年10月4日宣布收購了創建了HTML5 移動套用框架PhoneGap 和PhoneGap Build的新創公司Nitobi Software。

收購後,Adobe將為開發人員提供兩個強大的跨平台原生移動應 用程式開發工具:基於 HTML5 和 JavaScript 腳本的 PhoneGap,以及 Adobe Flash? 與Adobe AIR?。PhoneGap 的開源框架目前已被下載超過 60 萬次,有幾千款用PhoneGap 構建的應用程式已經進入Android、iOS、黑莓和其他作業系統的移動應用程式商店當中。

支持平台

PhoneGap目前支持的作業系統包含:

蘋果的iOS,谷歌的Android,RIM的Blackberry,惠普的WebOS,微軟的Windows Phone,塞班公司的Symbian以及三星的bada

FeatureiPhone /iPhone 3GiPhone 3GS and newerAndroid5.x6.0+webOSWindows PhoneSymbianBada
加速規
照相機
羅盤 不適用 不適用 不適用 不適用
通訊簿 不適用
檔案 不適用 不適用 不適用
定位
多媒體 不適用 不適用 不適用 不適用 不適用
網路
通知(alert)
通知(sound)
通知(vibration)
存儲 不適用 不適用

前景

Adobe公開表示將會為HTML5開發推出更多有意義的工具。有業內人士表示,Adobe的HTML5戰略特別值得注意,此外Adobe對於賈伯斯的此番公開批評曾積極地回應道:“賈伯斯說的不都是對的。”這是個好的信號,在flash和html5之間猶豫的開發者可以大膽的使用phonegap了,另外html5更注重移動平台,flash更適合pc端。在html5移動套用的架構選擇上,PhoneGap無疑是最佳的開發模式。

相關詞條

相關搜尋

熱門詞條

聯絡我們