天天看點

Hybrid App是如何實作網頁語言與程式語言的混合?誰占主體?

基于HTML5的Web App在移動端接受實用性檢驗後,開發者從熱情轉為觀望。這時候Hybrid App作為現階段HTML5技術的落腳點正悄然興起!Native App和Web App的論戰加入了一個新的角色Hybrid App。

但究竟什麼是Hybrid App?如何定義?

Hybrid App:Hybrid App is a mobile application that is coded in both browser-supported language and computer language. They are available through application distribution platforms such as the Apple App Store, Google Play etc. Usually, they are downloaded from the platform to a target device, such as iPhone, Android phone or Windows Phone. The subscribers need to install to run them.

我們來拆解一下裡面的含義:

1、mobile application:Hybrid App就是一個移動應用

2、both browser-supported language and computer language:同時使用網頁語言與程式語言編寫

3、available through application distribution platforms:通過應用商店進行分發

4、a target device:區分目标平台

5、install to run:使用者需要安裝使用

綜合一下就是:“Hybrid App同時使用網頁語言與程式語言開發,通過應用商店區分移動作業系統分發,使用者需要安裝使用的移動應用”。總體特性更接近Native App但是和Web App差別較大。隻是因為同時使用了網頁語言編碼,是以開發成本和難度比Native App要小很多。是以說,Hybrid App兼具了Native App的所有優勢,也兼具了Web App使用HTML5跨平台開發低成本的優勢。

Hybrid App的興起是現階段移動網際網路産業的一種偶然。移動網際網路的熱潮刮起後,衆多公司前赴後繼的進入。但是很快發現移動應用的開發人員太少,是以導緻瘋狂的人才争奪。市場機制下移動應用開發人才的待遇扶搖直上,最終變成衆多企業無法負擔養一個具備跨平台開發能力的專業移動應用開發團隊。而HTML5的出現讓Web App露出曙光,HTML5開發移動應用的跨平台和廉價優勢讓衆多想進入移動網際網路領域的公司開始心動。可是當下基于HTML5的Web App更是霧裡看花,在使用者入口習慣、分發管道和應用體驗這三個核心問題沒解決之前,Web App也很難得以爆發。正是在這樣是機緣巧合下,基于HTML5低成本跨平台開發優勢又兼具Native App特質的Hybrid App技術殺入混戰,并且很快吸引了衆人的目光。大幅的降低了移動應用的開發成本,可以通過現有應用商店模式發行,在使用者桌面形成獨立入口等等這些,讓Hybrid App成為解決移動應用開發困境不錯的選擇,也成為現階段Web App的代言人。Hybrid App像刺客一樣,在Native App和Web App混戰之時,偶然間的在移動應用開發領域占有了一席之地。

Hybrid App通常分為三種類型:多View混合型,單View混合型,Web主體型。

多View混合型:

即Native View和Web View獨立展示,交替出現。目前常見的Hybrid App是Native View與WebView交替的場景出現。這種應用混合邏輯相對簡單。即在需要的時候,将WebView當成一個獨立的View(Activity)運作起來,在WebView内完成相關的展示操作。這種移動應用主體通常是Native App,Web技術隻是起到補充作用。開發難度和Native App基本相當。

單View混合型:

即在同一個View内,同時包括Native View和Web View。互相之間是覆寫(層疊)的關系。這種Hybrid App的開發成本較高,開發難度較大,但是體驗較好。如百度搜尋為代表的單View混合型移動應用,既可以實作充分的靈活性,又能實作較好的使用者體驗。

Web主體型:

即移動應用的主體是Web View,主要以網頁語言編寫,穿插Native功能的Hybrid App開發類型。這種類型開發的移動應用體驗相對而言存在缺陷,但整體開發難度大幅降低,并且基本可以實作跨平台。Web主體型的移動應用使用者體驗的好壞,主要取決于底層中間件的互動與跨平台的能力。國外的appMobi、PhoneGap國内的AppCan和Rexsee都屬于Web主體型移動應用中間件。其中Rexsee不支援跨平台開發。appMobi和PhoneGap除基礎的底層能力更多是通過插件(Plugins)擴充的機制實作Hybrid。而AppCan除了插件機制,還提供了大量的單View混合型的接口來完善和彌補Web主體型Hybrid App體驗差的問題,接近Native App的體驗。

多View混合型,單View混合型,Web主體型優劣勢對比

多View混合型

單View混合型

Web主體型

常見主體

Native

Web

開發成本

使用者體驗

從分析可見,Hybrid App中的Web主體型隻要能夠解決使用者體驗差的問題,就可以變成最佳Hybrid App解決方案類型。

國内外Hybrid App的開發架構衆多。如何選擇又成為一個難題。下面對開發者比較關心的集中知名跨平台開發移動應用中間件進行清單和對比,以便選擇最适合您的移動應用中間件。

<a href="http://7te8bu.com1.z0.glb.clouddn.com/uploads/2012/06/%E4%B8%AD%E9%97%B4%E4%BB%B6%E5%AF%B9%E6%AF%94-805x1024.jpg" target="_blank"></a>

AppCan在技術架構上和PhoneGap類似是Web主體型中間件,但是通過結合了一些原生互動效果能夠達到iOS、Android平台都比較一緻的使用者體驗。但是相比PhoneGap的開源,AppCan相對封閉的路線顯得過于謹慎。

Hybrid App這個領域雖然還處于比較初期的階段,但是已經有很多優秀的公司和技術團隊在緻力于跨平台開發移動應用中間件技術的研究,給了開發者衆多選擇。開發者可以根據實際的項目需求來選擇中間件。Web App雖被浏覽器廠商和搜尋引擎公司所推崇,但存在使用者體驗差、盈利模式不明确等現階段無法解決的問題,或最終夭折。Hybrid App正在被越來越多的公司和開發者所認同,勢必會成為新世界的王。

如何聯系我:【萬裡虎】www.bravetiger.cn

【QQ】3396726884 (咨詢問題100元起,幫助解決問題500元起)

【部落格】http://www.cnblogs.com/kenshinobiy/

繼續閱讀