推薦2個 參考網站,也有相關的例子:phonegap中國 phonegap
官網
1. PhoneGap 介紹
PhoneGap是一個標準的開源架構,基於HTML,CSS和JavaScript的,建立跨平台行動裝置 App的快速開發平台。它支援iPhone、Android、Palm、Symbian、WP7、Bada和Blackberry等平台。其實本質上來講,PhoneGap只是載入原生應用的webView外殼,然後將外部的頁面進行載入,所以其實際運行效果和通過網頁訪問效果一致;但因為有webview這個橋樑,所以又可以訪問原生介面,這樣就解決了HTML5不能訪問裝置api的問題。
2. PhoneGap運行原理
它實現跨平台的方式基本上就是使用內建的瀏覽器核心來運HTML, CSS和Javascript,例如在iOS中就是建立一個UIWebview來載入index.html。
我們可以使用 html,css實現頁面配置,通過JavaScript與原生系統API,進行通訊。如所示:
3. PhoneGap架構
應用運行在WebView組件上 ->通過PhoneGap在各平台的擴充
->最終訪問裝置本地資源。
我們所要做的主要是web app 的開發,使用HTML、CSS和JavaScript為使用者介面建立PhoneGap應用程式。
同時PhoneGap還為我們提供了部分api介面,主要的api如:
4. PhoneGap效能問題
1) 經過真機打包測試,以及渲染效率和互動體驗,發現PhoneGap 在執行指令碼,複雜迴圈運算,以及渲染複雜頁面時,效率低。
2) 穩定性及資源佔用方面,手動頻繁操作會引起,響應速度變慢,webkit的WebView不能很好釋放記憶體,導致記憶體佔用上升,甚至會引起應用的crash。
3) PhoneGap程式的載入和UI介面的反應都比原生的程式慢,UI反應延時.它實際上還是在展示Web頁面,所以載入、頁面重新整理等肯定是需要一定時間的。 這在使用者體驗上來說PhoneGap依然無法替代原生應用程式.
4) PhoneGap各平台的api還在完善中,應用對一些api的調用需要依靠對PhoneGap的更新來擷取支援。同時對於一些介面重新整理頻繁,加在大量png圖片和注重使用者體驗的應用不建議使用該架構。
5. 發布AppStore存在風險
如果使用PhoneGap架構的應用,介面互動偏離了蘋果的原生系統互動原則,設計不夠原生化,給使用者帶來的是網頁體驗而非native體驗,不能與web體驗區分開的應用很有可能被蘋果拒絕上線。從而影響到產品的上線,以及帶來的後續工作。
因此對PhoneGap應用的ui設計,互動設計,一定要有native的感覺,避免出現外殼封裝網頁的感覺。
最後推薦2個 參考網站,也有相關的例子:phonegap中國 phonegap 官網