PhoneGap技術介紹
PhoneGap
- 開發語言: HTML, CSS, JavaScript
- 開發工具: PhoneGap Development Tools, Development Code
- 鏈接: http://phonegap.com/
- 優點:開源、跨平臺
PhoneGap是一個開源項目,并且是跨平臺的。有了它,JavaScript 工程師能夠輕松地利用網頁技術(HTML/CSS/JavaScript)來開發手機應用(包括安卓和蘋果的)。PhoneGap號稱是“唯一開源的手機 框架,并且支持7個平臺”! 它支持的平臺有Android, iOS, Windows Phone7, Web OS, Symbian, 和 BADA。
phonegap 簡單來說是一個中間件,為移動前端提供訪問移動終端設備及資源的接口。采用統一的標準的html、javascript、css等web技術開發。通過不 同平臺的瀏覽器訪問來實現跨平臺。通過javascript腳步代碼調用系統資源,以降低開發難度,所以受到廣大web開發人員的青睞。
我們需要搞清楚幾個概念:Web App,Native App,Hybird App移動平臺Application幾個概念:
Web App 這個主要是采用統一的標準的 HTML,JavaScript。CSS等web技術開發。通過不同平臺的瀏覽器訪問來實現跨平臺。同時可以通過瀏覽器支持充分使用HTML5特性,缺點 是這些基于瀏覽器的應用無法調用系統API來實現一些高級功能,也不適合高性能要求的場合。
Native APP 就是所謂的原生應用。指的是用平臺特定的開發語言所開發的應用。使用它們的優點是可以完全利用系統的API和平臺特性,在性能上也是最好的。缺點是由于開發技術不同,如果你要覆蓋多個平臺,則要針對每個平臺獨立開發,無跨平臺特性。
Hybird App 則是為了彌補如上兩者 開發模式的缺陷的產物。分別繼承雙方的優勢。首先它讓為數眾多的web開發人員可以幾乎零成本的轉型成移動應用開發者;其次,相同的代碼只需針對不同平臺 進行編譯就能實現在多平臺的分發,大大提高了多平臺開發的效率;而相較于web App,開發者可以通過包裝好的接口,調用大部分常用的系統API。
而PhoneGap正是Hybird APP目前框架中集大成者
phonegap優缺點評估
日前,phonegap框架熱度如火如荼。一項技術當然會有其優缺點,我們是選用phonegap還是選擇Native APP,要先分析兩者的利弊,再根據具體應用選擇,
1 phonegap優點:
1.1、可跨平臺。它的原理如下:PhoneGap通過調用JavaSCript調用API庫實現和各個平臺的SDK進行無差別的交互。 以達到調用不同平臺手機上攝像頭,文件系統,重力感應。GPS定位等功能。
1.2 易用性。
1.3 提供硬件訪問控制。比起傳統的Web程序,PhoneGap提供了一些列的JS 的類,可以直接訪問硬件。比如加速,相機,指南針,GPS,文件訪問等,可以讓你用JS方便地調用系統的硬件。以彌補傳統Web程序的一塊錯誤。
1.4 可利用成熟javascript框架。web的發展,誕生了許多javascript框架。著名的有Ext js、jQuery。隨著移動應用的需求越來越大,jQuery出現了jQuery mobile版本。它的體積小,為移動應用量身定制。使用javascript框架也降低了開發難度,使得移動應用更美觀。
1.5 方便的安裝和使用。PhoneGap,只用很簡單的配置就可以搭好環境。只用專注寫好自己的Web頁面,拷貝進去就可以了。
2 phonegap不足之處
2.1 運行速度慢。PhoneGap集成多了個平臺。程序的載入和UI界面的反應都比原生的程序慢,UI反應延時—— 這是個致命傷 。它實際上還是在展示Web頁面,所以載入、頁面刷新等肯定是需要一定時間的。這在用戶體驗上來說PhoneGAp依然無法替代原生應用程序。另 外,html、javascript、css都運行在各平臺內置瀏覽器webkit之上,受到webkit處理速度影響。目前來說運行速度比較慢,性能較 差。
2.2 不適合部分程序。如果你的程序需要3D功能,或者對界面刷新有較高的要求,比如類似于游戲的程序現在來說還只是用原生的語言會比較好。
2.3 調用平臺資源差。phonegap應用程序對平臺資源的使用依賴于phonegap框架本身,由于phonegap是第三方框架,做不到100%調用平臺資源。比如說,現在版本未能支持視頻解碼與播放等
2.4 內存消耗大。有測試表明,用phonegap于android java開發同一個應用。運行phonegap應用內存消耗遠大于原生態android java應用。對于頻繁操作,釋放內存較慢,從而導致內存消耗量飆升。
2.5 調試難度大。目前phonegap可以在控制臺輸出簡單的JS調試日志,但是并不方便。調試js只能選擇firefox firebug調試。
結語
phonegap的目標就是快速開發移動應用實現written once, run everywhere跨平臺。phonegap一定程度上降低了移動開發的門檻,特別是ios開發。類似于phonegap這樣的框架的出現,并不能取代 Native APP原生態應用。phonegap有它的不足之處,運行速度較慢、操作平臺資源不靈活、操作移動設備不方便,這些都依賴著phonegap框架本身的升 級與發展。
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!