PhoneGap工作原理及需改進的地方
PhoneGap是目前最被看好的:
- 兼容性:完全做到了Written Once,Run Everywhere!
- 標準化:PhoneGap采用W3C標準,Web App直接運行!
- 采用普通web開發(fā)技術(shù):JavaScript+HTM5+CSS3。
但是這并不代表PhoneGap是完美的,本文完美將介紹Phone的不足及工作原理
一、PhoneGap如何工作?
PhoneGap架構(gòu)擁有強大的跨平臺訪問設備能力,但是其工作原理并不神秘,iPhone和Android平臺共同點是都有內(nèi)置的WebView組件,其具備兩個特性:
WebView組件實質(zhì)是移動設備的內(nèi)置瀏覽器
WebView這個內(nèi)置瀏覽器特性是Web能被打包成本地客戶端的基礎(chǔ),可方便的用HTML5、CSS3頁面布局,這是移動Web技術(shù)的優(yōu)勢相對于原生開發(fā)。
WebView提供Web和設備本地API雙向通信的能力
PhoneGap針對不同平臺的WebView做了擴展和封裝,使WebView這個組件變成可訪問設備本地API的強大瀏覽器,所以開發(fā)人員在PhoneGap框架下可通過JavaScript訪問設備本地API。

PhoneGap與設備本地API通信圖
一個成熟的PhoneGap技術(shù)客戶端運行狀況:應用運行在WebView組件上 -> 通過PhoneGap在各平臺的擴展 -> 最終訪問設備本地資源。

PhoneGap架構(gòu)圖
二、存在不足:
- 性能,正常操作速度流暢,頻繁操作響應會變慢。
- 穩(wěn)定性及資源占用方面,手動頻繁操作會引起,響應速度變慢,webkit的WebView不能很好釋放內(nèi)存,導致內(nèi)存占用上升,甚至會引起應用的crash。
總結(jié):
最后告訴各位讀者PhoneGap + 合適的javascript開發(fā)框架,輕松開發(fā)出原生風格的移動應用。選擇哪種js框架,你可以通過:《三大移動Web開發(fā)框比較分析》一文,選擇適合的框架。