自己寫HTML用Cordova打包與用AppCan、Dcloud、WeX5、ApiCloud有何區別?

本人是一個移動開發/web開發入門者,想問一下,自己編寫HTML用Cordova打包,和會用ApiCloud、AppCan、Dcloud、WeX5等工具有什麼區別?

我自己寫過簡單的幾種HTML網頁(工程):

1)用純HTML+js+jQuery寫過;

2)用jQueryMobile寫過;

3)用Phaser[dot]io寫過;

這幾種方式生成的網頁,都用Cordova打包生成apk文件,方法非常非常簡單,就是安裝Android Studio + npm + cordova,因為Android Studio自動會提供Android SDK/JDK,Cordova就可以自動檢測到了,根本不需要像網上以前的文章還要自己安裝那麼麻煩。而用Cordova的話,幾個命令非常簡單,再加上簽名 keytool -genkey 和 jarsigner ,一分鐘就可以講一個HTML網頁工程打包成 apk,並在自己的android手機上安裝運行。

我發現,用jQueryMobile生成的APK很慢,使用效果很不舒服,也沒深入研究過為什麼。

我還發現,Phaser[dot]io生成APK效果非常差,兼容性非常差,不會再考慮碰它了。

我發現,用純HTML+jQuery生成的APK,效果好極了,比在PC或者手機瀏覽器上打開對應的網頁,速度快的多,感覺很棒。

我其實想知道,我是否只要學習Cordova就夠了?因為它那麼簡單、那麼方便快速,而且是本地生成的,不需要什麼雲端打包(將自己的代碼上傳到別人的雲上,心理真的很不舒服,只有我一個這樣嗎?)。那麼,為什麼還需要Dclout(HBuilder), ApiCloud, AppCan, WeX5, 白鷺, Cocos2d-js等等那麼多工具呢?這些工具是不是只是對Cordova的封裝?還是各自有各自長處呢?

另外,現在網上人們所說的「Hybrid APP"開發,是不是就是指用Cordova開發呢?還是專門指用Dclout(HBuilder), ApiCloud, AppCan, WeX5, 白鷺, Cocos2d-js的開發呢?


其實這類的對比在DCloud網站上有,這篇文章寫得比較詳細:文檔 - DCloud問答 。

Cordova的功能、性能與DCloud的系列產品組合相比,還是差很多的。

DCloud也一樣支持本地打包。

前端框架是絕不能用jQueryMobile的,DCloud出品的開源框架mui的性能是目前已知的前端ui框架里效率最高的。


題主說的http://phaser.io不是一個html5 game engine 的官網么?又不是打包工具


我用Cordova打包和那些框架還真沒什麼差別,都是混合模式的開發框架,Cordova相對還更開放和主流另外:WeX5就是基於Cordova的,可視化設計和打包嚮導都做的相當不錯,還是免費開源的,強烈推薦

WeX5的打包工具適合所有的Cordova項目,自己做的頁面也可以用WeX5打包,我現在都不用Cordova命令行打包了,還是有工具好使


個人感覺還是應該看自己的實際使用情況,如果就是自己的應用不複雜,並且自己還有些原生的開發能力,可以直接用Cordova就好了,一切自己搞定。不用依靠這些國內平台了。

但是如果應用比較複雜,要用到很多HTML之外的功能,還想做的體驗好點,就要考慮使用這些國內的平台的產品了。總體而言,這些產品都不夠完美和成熟,但是國外也沒有更好的產品了。這些國內的平台起碼還能適配國內的手機和支持國內的服務。更實際點。

本人11開始做移動應用開發,最開始搞IOS開發,後來做外包省成本就一直用AppCan,雖然有各種問題但一直也能齊活,現在做一個幼教類的產品正在嘗試用APICloud,以下是本人的一些體會,供樓主參考:

AppCan:

優勢:從12年開始一直用,出來的很早,感覺不錯,工具、平台、服務都相對比較穩定,好像很多大的國企也在用.

缺點:現在更新和完善不是很及時,一般幾個月出一個版本,一些新功能不及時能用。

ApiCloud:

優勢:互聯網公司,感覺挺草根的,但是推廣的很猛,社區挺活躍,各種水平的開發者都有,學習的人分享的東西挺多,做出來的應用體驗確實是所有中最好的,應該是內部執行引擎很牛。產品是雲端一體(但沒有用過他們的數據云),編碼工具不是一個集成的工具,是未各個工具提供插件,而且這些插件都開源了,可以自己修改,像自定義代碼提示。像我一直用Sublime,這一點就很好,這些擴展插件想真機同步,打Log都挺方便的。

缺點:更新的太快,API不太穩定,有的時候更新的模塊出問題,每次他們升級玩都得把自己的應用測試下。在某些安卓手機上優化的有問題,沒有AppCan穩定。

Dclout(HBuilder):

優勢:Dclout的其他服務沒具體用過,HBuilder用過,還是一個很不錯的編輯器,整體體驗還是不錯,像代碼提示很智能,基於Eclipse的二次開發能做出這樣也挺厲害了。特別是對HTML語法支持瀏覽器兼容性很好。有個前端框架寫CSS挺省事的。

缺點:HBuilder Size太大,而且還得聯網使用,整體體驗還是Eclipse風格,相比我還是推薦使用Sublime。主要是做出了的應用就是網頁的體驗,這個實在是不適合用來做應用。做個WebApp還行。

WeX5:沒有用過,之前看過他們的一個視頻,一個女的講的,感覺是說照著搞念,一個語氣下來,沒太耐心看下去。不過推廣做的好像也挺猛的,公司好像也是挺大的,但是做出來的應用體驗如何沒有具體測試過,不做具體評論。

白鷺, Cocos2d-js:這兩個應該是做網頁遊戲的引擎,不是用來做應用的。

到底要用那個其實我感覺也很簡單,他們的宣傳上都有很多的案例,調幾個有代表性的安裝到幾個手機上運行看看體驗就行了。看他們的代碼也很簡單,用他們開發的應用的網頁代碼都是在ipa和apk安裝包中放著的,把後綴名改成zip, 直接解壓出來直接就能看代碼了。很簡單。


比較熟悉APICloud,答一下吧。

Cordova是把Webapp打包成可以獨立安裝的應用,推薦使用HTML5,JS,CSS完成應用,提供了一些跨平台的,HTML5或前端暫無法實現的介面。

受手機瀏覽器的影響,頁面的切換和複雜點的交互跟原生應用體驗差距明顯。

APICloud彌補了一些Webapp的略勢,一些用前端實現性能不佳的功能,採用原生語言(Object-C,JAVA)實現,比如最常用的頁面切換是基於webview的原生語言實現的,每個頁面都是獨立的webview。此外還有大量的原生介面提供(設備訪問,界面布局,開放SDK等),所有的介面都是以JS形式提供的,前端很容易上手。這種混合應用的形式也是當前比較合理的形式,前端處理比較擅長的頁面布局,UI展現,及簡單的交互,原生模塊負責耗性能的,不易實現的功能實現,彼此聯繫起來形成一個完整的體驗良好的應用。

同時APICloud也提供了雲資料庫的功能,前端不必了解PHP,Node.js等後端語言,自己通過JS介面或Restful API實現資料庫的增刪改查。


沒什麼區別,都是做的一樣的事情。

只在很早期用過appcan,如有錯誤可以指正。

cordova開源免費,插件github上找。

appcan企業版應該要幾萬塊吧,部分插件也收費的樣子。

不過呢,appcan畢竟面向國內開發者,雲端打包,沒有很複雜的環境配置和硬體需求,比較符合國情。

然後cordova的插件很多是外國人寫的,雖然都是開源免費,但是在國內由於牆的原因有些插件不太好使,比如定位和gcm。


推薦閱讀:

你為什麼選擇做前端?
如何在 form 表單提交後實現頁面不跳轉?
2015年web前端開發行業的牛人有哪些?
為什麼cocos creator 不選擇兼容c#,而是只有js?
js中 aaa.style 和 aaa.getAttribute(style) 等價嗎,有無區別?

TAG:JavaScript | HTML5 | cordova | html5開發app | apicloud |