hybird -(01:hybird簡介瓢姻,系列對比,創(chuàng)建cordova工程)

--- 廖馬兒

1.hybird介紹

新浪微博有 webapp版本
《百度app》 就是hybird app
native app就不用說了

Store里的新聞類APP音诈,視頻類APP普遍采取的是Native的框架幻碱,Web的內(nèi)容

i.e.
1)webApp:

0A233F4EA484AE72BF1FCC152739E3E2.png

2)混合app

3)native(就是原生)

2.擁有下面特點的就是一個Web App了:使用瀏覽器運(yùn)行;純Web前端架構(gòu)细溅,很多重要手機(jī)特性無法訪問褥傍,例如聯(lián)系人以及Push notification之類的;Single Page App喇聊;銷售渠道多限于瀏覽器.

3.對比:


1525093-e8572448cf655288.png

1)native(原生) app: 安卓開發(fā)恍风,IOS開發(fā),黑莓,塞班朋贬,wIndows phone 等凯楔。
要滿足這么多系統(tǒng)的話,只需要hybird一種兄世。

2)用戶體驗要最求極致的話啼辣,還是選擇native開發(fā)。

4.Hybird 基于 WebView的
UIWebView 與 WKWebView 的比較

UIWebView由于其API不好用御滩,有的功能不齊全鸥拧,還有內(nèi)存泄漏。
iOS8之后出了WKWebView削解。WKWebView提供了一系列API來使得Native與Web的信息交換簡單高效富弦。WKWebView使用與Safari相同的JS引擎+內(nèi)置手勢+無內(nèi)存泄漏。(總之WKWebView比UIWebView好很多)

iOS8之后WKWebView出現(xiàn)氛驮,目的是代替UIWebView.

5.主要技術(shù)在于:
JS+Native兩者相互調(diào)用腕柜。語言:JS+HTML5 。

6.Hybird App 開發(fā)主流平臺:
主流的平臺包括PhoneGap(Cordova)矫废,AppCan盏缤,appMobi,Titanium
都是基于webkit(https://github.com/WebKit/webkit)開源內(nèi)核蓖扑,使用HTML5 標(biāo)準(zhǔn)開發(fā)唉铜,適配機(jī)型簡單,支持開發(fā)者自定義插件

最主要的兩類的開發(fā)平臺:
PhoneGap(Cordova) vs AppCan

PhoneGap優(yōu)點:
PhoneGap可以基于一些開源的框架提升用戶體驗律杠。
PhoneGap也提供了比較豐富的原生插件調(diào)用潭流。
可以使用DreamWeaver開發(fā),開發(fā)速度可以加快柜去。
Native接口比較豐富灰嫉,通過封裝的API可以直接訪問硬件,比如說加速嗓奢,相機(jī)讼撒,指南針,GPS蔓罚,文件訪問等椿肩。
PhoneGap缺點:
需要針對相應(yīng)的平臺環(huán)境配置,進(jìn)行編譯豺谈,打包測試郑象,發(fā)布等等。eg:iOS的環(huán)境配置茬末,打包測試你要懂厂榛,Android的環(huán)境配置盖矫,打包測試要懂。
使用效果慢击奶,啟動慢辈双,頁面切換相應(yīng)慢,數(shù)據(jù)請求慢柜砾,相對native湃望。
國外使用多,文檔基本是英文痰驱。

AppCan特點:
中國使用的比較多证芭。(http://www.appcan.cn
AppCan不僅封裝了類似于PhoneGap的本地調(diào)用功能,而且封裝了uexWindow多窗口機(jī)制担映,實現(xiàn)了移動端的iframe效果废士。
不是開源項目。
appcan目前分兩個版本:大眾版蝇完、企業(yè)版官硝。
AppCan優(yōu)點:
擁有提供的集成開發(fā)環(huán)境的IDE進(jìn)行模擬器開發(fā)。(
AppCanIDE)有windows版本短蜕,也有Mac OS X版本氢架。
可以在線打包,不需要像Cordova要了解那么多平臺的配置朋魔。
支持更多的原生調(diào)用达箍,比如UI控件的封裝,通訊類(socket)铺厨,地圖,支付寶等更多的原生控件支持硬纤。
擁有統(tǒng)一數(shù)據(jù)統(tǒng)計平臺解滓,便于運(yùn)營管理開發(fā)的應(yīng)用。
AppCan缺點:
暫時只支持iOS筝家,Android兩大平臺洼裤。
許多功能需要企業(yè)版才能實現(xiàn),不過是收費的溪王。

知乎上面對AppCan的評價:

作者:匿名用戶
鏈接:https://www.zhihu.com/question/23211519/answer/23928305
來源:知乎
著作權(quán)歸作者所有腮鞍,轉(zhuǎn)載請聯(lián)系作者獲得授權(quán)。

看你做什么了莹菱,小東西還是挺不錯(幾個頁面移国,不太復(fù)雜的),但稍微靠譜點的東西道伟,還是不推薦appcan迹缀。

appcan目前分兩個版本:大眾版使碾、企業(yè)版。

大眾版其實就是免費版祝懂,但功能有缺失(比如不能點對點推送票摇、不能本地打包,必須上傳到他們服務(wù)器砚蓬,否則打包出的app帶有他們的水邮该拧),企業(yè)版售價5W(聽買過的人說的灰蛙,具體我沒找官方咨詢過)祟剔,可以點對點推送,同時官方提供一些比較實用的插件(支付缕允、分享之類的)峡扩,同時好像可以自己開發(fā)插件(這點還沒確認(rèn))。

appcan有一點非痴媳荆坑爹教届,就是打包好的app會加入他們的一些代碼,這些代碼會做一些服務(wù)器請求驾霜,然后呢案训,由于他們的服務(wù)器非常不穩(wěn)定,經(jīng)常導(dǎo)致無法請求成功粪糙,其結(jié)果就是app沒法打開或者直接崩潰强霎,這點讓人很無語,就我個人的觀察來看蓉冈,基本上可以保證每個月都出問題城舞,官方的響應(yīng)也非常慢經(jīng)常一兩天搞不定(要是周六周末就更慘,肯定找不到人-_-)寞酿〖叶幔基本上你喊破喉嚨也沒人理你。

總之伐弹,就我個人的使用經(jīng)驗來看拉馋,appcan對免費版的支持相當(dāng)差(你可以認(rèn)為是沒支持-,-)惨好,至于企業(yè)版煌茴,我沒買,所以不知道是個什么程度日川。

所以如果你做的東西不是什么要緊的東西蔓腐,那么用它就無所謂,如果是打算開發(fā)靠譜的東西逗鸣,建議你繞道phonegap合住,那個更靠譜(我目前也轉(zhuǎn)用phonegap了)

7.我選擇了cordova

cordova 官方文檔:https://cordova.apache.org/docs/en/latest/guide/platforms/ios/

8.環(huán)境搭建:

1)首先安裝node.js:
https://nodejs.org 下載pkg文件運(yùn)行安裝 ( 注意:這里要使用google 下載绰精,我開始用safari瀏覽器下載的特別緩慢 )
終端運(yùn)行 npm -v,如果出現(xiàn)版本號則說明 Node.js 安裝成功

2-1)命令行安裝Cordova CLI

sudo npm install -g cordova

以后如果要更新Cordova:

sudo npm update cordova -g

cordova更新完成后透葛,還需要更新項目(比如更新ios項目):

cordova platform update ios

2-2)安裝inoic:

sudo npm install -g cordova ionic

3)測試下Cordova是否安裝成功

cordova -v

顯示版本號則證明安裝成功

9.創(chuàng)建cordova 項目:

// 先找到目錄位置:

cd ~/Documents

創(chuàng)建工程項目:

cordova create 工程的文件夾名 com.xxx.工程的文件夾名 App的顯示名稱

e.g: cordova create hello com.example.hello HelloWorld

注意: App的顯示名稱 可以在config.xml中改變

創(chuàng)建成功目錄結(jié)構(gòu):

屏幕快照 2016-12-10 上午10.08.09.png

目錄文件夾說明:

conig.xml :cordova的配置文件
hooks/ :存放自定義cordova命令的腳本文件笨使。
platforms/ :各個平臺原生工程代碼,會在build時被覆蓋勿修改
plugins/ :插件目錄(主要是提供各個平臺的原生API)
www/ :用H5編寫的源代碼目錄僚害,build時會被放入各個平臺的assets\www目錄硫椰。
www/index.html :App入口html文件

10.添加iOS平臺支持:

  1. terminal中進(jìn)入項目:

    cd xx/x/xx/x
    2)添加iOS平臺文件

    cordova platform add ios

屏幕快照 2016-12-10 上午10.28.32.png
  1. 可以打開Xcode查看了

一般都是編輯外面的www文件夾里的頁面,而不是里面Staging的www文件夾萨蚕。然后運(yùn)行如下命令重新 build 工程靶草,這些頁面就會自動覆蓋到各個平臺下對應(yīng)目錄下。

cordova build

然后在Xcode中編譯運(yùn)行岳遥。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末奕翔,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子浩蓉,更是在濱河造成了極大的恐慌派继,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,188評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件捻艳,死亡現(xiàn)場離奇詭異驾窟,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)认轨,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,464評論 3 395
  • 文/潘曉璐 我一進(jìn)店門绅络,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人嘁字,你說我怎么就攤上這事恩急。” “怎么了纪蜒?”我有些...
    開封第一講書人閱讀 165,562評論 0 356
  • 文/不壞的土叔 我叫張陵假栓,是天一觀的道長。 經(jīng)常有香客問我霍掺,道長,這世上最難降的妖魔是什么拌蜘? 我笑而不...
    開封第一講書人閱讀 58,893評論 1 295
  • 正文 為了忘掉前任杆烁,我火速辦了婚禮,結(jié)果婚禮上简卧,老公的妹妹穿的比我還像新娘兔魂。我一直安慰自己,他們只是感情好举娩,可當(dāng)我...
    茶點故事閱讀 67,917評論 6 392
  • 文/花漫 我一把揭開白布析校。 她就那樣靜靜地躺著构罗,像睡著了一般。 火紅的嫁衣襯著肌膚如雪智玻。 梳的紋絲不亂的頭發(fā)上遂唧,一...
    開封第一講書人閱讀 51,708評論 1 305
  • 那天,我揣著相機(jī)與錄音吊奢,去河邊找鬼盖彭。 笑死,一個胖子當(dāng)著我的面吹牛页滚,可吹牛的內(nèi)容都是我干的召边。 我是一名探鬼主播,決...
    沈念sama閱讀 40,430評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼裹驰,長吁一口氣:“原來是場噩夢啊……” “哼隧熙!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起幻林,我...
    開封第一講書人閱讀 39,342評論 0 276
  • 序言:老撾萬榮一對情侶失蹤贞盯,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后滋将,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體邻悬,經(jīng)...
    沈念sama閱讀 45,801評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,976評論 3 337
  • 正文 我和宋清朗相戀三年随闽,在試婚紗的時候發(fā)現(xiàn)自己被綠了父丰。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,115評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡掘宪,死狀恐怖蛾扇,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情魏滚,我是刑警寧澤镀首,帶...
    沈念sama閱讀 35,804評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站鼠次,受9級特大地震影響更哄,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜腥寇,卻給世界環(huán)境...
    茶點故事閱讀 41,458評論 3 331
  • 文/蒙蒙 一成翩、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧赦役,春花似錦麻敌、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,008評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽赢赊。三九已至,卻和暖如春级历,著一層夾襖步出監(jiān)牢的瞬間释移,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,135評論 1 272
  • 我被黑心中介騙來泰國打工鱼喉, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留秀鞭,地道東北人。 一個月前我還...
    沈念sama閱讀 48,365評論 3 373
  • 正文 我出身青樓扛禽,卻偏偏與公主長得像锋边,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子编曼,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,055評論 2 355

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,180評論 25 707
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫豆巨、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 12,107評論 4 62
  • 我哭了 你笑著 白玫瑰 紅玫瑰 沾著米粒的白玫瑰 惡心著自己 反反復(fù)復(fù)
    蕭雨彤閱讀 241評論 0 0
  • 即便有一天我和秦先生分手了掐场,也拒絕相親往扔。 在喜歡秦先生之前 我一直以為自己骨子里是個淡漠的人 沒有特別摯愛的東西 ...
    金瀾愛寫作閱讀 200評論 0 1
  • ????“把那些煩人的宇宙理論知識都丟到一邊吧嚷堡,相信我蝗罗,那一點都不重要,告訴我蝌戒,你想要一個什么世界串塑。” ??“我不知道...
    曾艷芬微光站閱讀 239評論 0 0