複製鏈接
請複製以下鏈接發送給好友

PhoneGap

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

PhoneGap定義

Phonegap是一款開源的開發框架,旨在讓開發者使用HTMLJavascript、CSS等Web APIs開發跨平台的移動應用程序。原本由Nitobi公司開發,後由Adobe擁有。
它需要特定平台提供的附加軟件,例如iPhone的IOS SDK,Android的Android SDK等,也可以和DW5.5及以上版本配套開發。使用PhoneGap只比為每個平台分別建立應用程序好一點點,因為雖然基本代碼是一樣的,但是你仍然需要為每個平台分別編譯應用程序。

PhoneGap起源

第一段PhoneGap代碼是在2008年8月的iPhoneDevCamp上寫成的。創建它的一個主要動力是基於一個幾乎每一個單獨的iPhone開發新手都要面對的簡單事實:Objective-C是一個對Web開發人員來説非常陌生的環境,並且Web開發人員的數量遠遠多於Objective-C開發人員的數量。
問題是,是否有人可以開發一個框架,讓Web開發人員可以利用他們所有的HTML、CSS和JavaScript知識,而且仍舊可以同iPhone的重要本地應用程序(如攝像頭和通訊錄)交互呢?
就在那一年,PhoneGap獲了獎並開始支持Android平台,對人數不斷增長的移動開發人員變得越來越有用,這些人員需要在更多的平台上獲得代碼支持。

PhoneGap狀態評估

截止 2014年5月14日,phonegap的最新版本為3.4.1 [1]  。PhoneGap在多個主要的智能手機設備上提供了以下功能的支持:
  • 加速計
  • 攝像頭
  • 羅盤
  • 通訊錄
  • 文檔
  • 地理定位
  • 媒體
  • 網絡
  • 通知(警告、聲音和振動)
  • 存儲
如果正在為iPhone或Android設備做開發,那麼這些功能都是支持的。如果是為BlackBerry、webOS、Windows Phone 7、Symbian或Bada設備做開發,則有些功能就不支持了(例如,在Windows Phone 7上,就不支持攝像頭、羅盤或存儲功能。老版的BlackBerry型號支持地理定位、通知以及網絡的可達性,但僅此而已)。
未來發行版本的路線圖包括對Contact API的升級,將其更新到最新的W3C規範。此外,計劃支持以下功能(這只是嘗試,而非完整的路線圖):
  • 加密
  • Websockets
  • Web通知
  • HTML媒體捕獲
  • Calendar API
  • 國際化支持
  • 命令行編譯
  • 網損/恢復事件

PhoneGap版本

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)。
[2] 
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地址聯繫和科爾多瓦的命令,在他們的空間路徑。

PhoneGap功能

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永遠會有一席之地,比如高端遊戲.

PhoneGap公司近況

電腦軟件公司Adobe 2011年10月4日宣佈收購了創建了HTML5 移動應用框架PhoneGap 和PhoneGap Build的新創公司Nitobi Software。
收購後,Adobe將為開發人員提供兩個強大的跨平台原生移動應 用程序開發工具:基於 HTML5 和 JavaScript 腳本的 PhoneGap,以及 Adobe Flash? 與Adobe AIR?。PhoneGap 的開源框架已被下載超過 60 萬次,有幾千款用PhoneGap 構建的應用程序已經進入Android、iOS、黑莓和其他操作系統的移動應用程序商店當中。

PhoneGap支持平台

PhoneGap支持的操作系統包含:
蘋果的iOS,谷歌的Android,RIM的Blackberry,惠普的WebOS,微軟的Windows Phone,塞班公司的Symbian以及三星的bada
Feature
iPhone /iPhone 3G
iPhone 3GS and newer
Android
5.x
6.0+
不適用
不適用
不適用
不適用
通訊簿
不適用
檔案
不適用
不適用
不適用
定位
多媒體
不適用
不適用
不適用
不適用
不適用
網絡
通知(alert)
通知(sound)
通知(vibration)
存儲
不適用
不適用

PhoneGap前景

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