來源:http://www.mamicode.com/info-detail-1129829.htmljavascript
如今Hybrid app是一中很是火熱的開發模式,在國內對應的開發工具也亂象叢生,有WeX五、crossApp、ExMobi、Appcan、apicloud、HBuilder等。php
其中WeX5只是在PhoneGap外面套了一層殼子,內部的UI都是經過大量的css,js實現的,頁面切換也大量採用webapp模式,相似於JQuery Mobile中的框架,太過偏向於webapp,性能得不到較好的體驗,並且缺乏第三方功能SDK封裝支持。css
crossapp是一款實用C++開發跨平臺應用的工具,由於Android與IOS應用程序自己就是可以用C++來開發的,因此這也算是一種類原生方式開發,可是C++開發Android應用程序或者開發IOS應用程序不多見,會的人很少,缺乏交流平臺,本身開發插件比較困難,只能徹底依賴官方提供,官方的第三方插件庫資源不足,很難知足開發者變態的需求。html
ExMobi是烽火科技研發的一種內部使用的開發平臺,固然也能夠購買使用權,雖然也有免費版,可是在免費版連推送功能都不開放的狀況下你還會選擇嗎?大量的功能須要購買不一樣的版本纔會提供,對於小型開發團隊來講不切實際。前端
Appcan是國內最先一批研發Hybrid app開發模式中的一員,其存在時間之久,屬目前國內Hybrid app開發平臺之最,爲何它可以一直堅持下去?那確定是有其優勢所在。Appcan基於多webview來開發單Activity模式app,最近去除了ActivityGroup,採用Fragment來代替,優化了性能及體驗,同時其合做商家普遍,第三方SDK應有盡有,可以很好地知足開發者的變態需求。html5
apicloud的一種從Appcan脫離出來的技術,雖然說其開發人員有不少是Appcan原來的技術人員,可是這是兩種不一樣的設計方式,它也有大量的第三方SDK支持,而且其UI是使人看着比較舒服的(我的以爲)。java
HBuilder的webview處理方式與apicloud基本相似,其實這種用webview裝載網頁的技術都大同小異,網上也能找到,只是在於細節點處理方面不一樣而已。node
Appcan&apicloud&HBuilermysql
來源:http://blog.csdn.net/tangzenglei/article/details/50668914jquery
移動開發是將來一個很重要的IT領域,而跨平臺開發將是這一領域最重要的事情。 ----谷震平
在國外,最大的是Cordova(PhoneGap,2011年普遍流行),在2012年12月開源。
在國內,按時間順序,有:
Cordova是Apache軟件基金會的一個產品。其前身是PhoneGap,由Nitobi開發,2011年10月,Adobe收夠了Nitobi,而且PhoneGap項目也被貢獻給Apache軟件基金會。Apache在2012年12月,發佈了Cordova,截止到2015年12月,最新版面是3.0。
該框架的目標用戶羣體是原生開發者,其設計初衷是但願用戶羣體可以經過跨平臺開發的方法下降原生開發的成本。爲此,開發人員須要安裝原生開發環境,配置工程,使用HTML5、CSS3、js和原生SDK生成應用。
Cordova的優點很明顯,可使用的框架、原生接口、支持平臺都不少。可是,外國人寫的東西,公司使用後,出現的技術問題難以解決。同時,其在使用jQuery Mobile、Sencha Touch等前端框架的時候,有特效啓動慢、頁面切換慢、數據請求慢的特色。
AppCan成立於2010年,2011年推出產品並測試,2012年正式推出品牌,2013年商業模式成型,2014年開發者註冊約70w。AppCan不是開源平臺,同時,企業版和部分插件是收費的。換句話說,AppCan只是一個賣軟件的商業公司。咱們認爲:這會對其市場的佔有率有着直接影響,閉源而沒有壟斷,因此前景不會太好。
DCloud大部分產品開源,W3C會員單位,html5中國產業聯盟的發起公司之一,在Html5這個行業有必定的江湖地位。旗下四款產品:HBuilder、5+ Runtime、MUI、流應用都是彌補並擴展HTML5特性的產品。該公司的理念就是解決HTML5的性能、工具、能力三方面的問題。MUI是一款不錯的前端框架,性能比 jquery Mobile、Bootstrap好不少,主要區別:
可是,DCloud畢竟是個新平臺,發展才2年,新產品內部存在的Bug還須要不少的測試。在其官方社區中,很多開發者也在呼籲DCloud儘快完善文檔和框架。
APICloud提供原生應用的功能模塊(設備訪問,界面佈局,開放SDK等),開發者能夠經過JS調用。前端工程師負責頁面佈局,UI展示,及簡單的交互,原生模塊負責性能方面和功能實現,二者結合造成一個完整的應用。同時APICloud提供了雲數據庫的功能,前端沒必要了解PHP,Node.js等後端語言,經過JS接口或Restful API實現數據庫的增刪改查。
可是APICloud的更新速度很快,版本不太穩定。並且,它是爲不懂APP開發的人士準備的,不適合科技公司和程序員。
由上表可知,4個平臺的定位是不一樣的,致使其產品的功能特性不同。