『壹』 如何開發混合式app
Hybrid App(混合模式移動應用)是指介於web-app、native-app這兩者之間的app,兼具「Native App良好用戶交互體驗的優勢」和「Web App跨平台開發的優勢」。
Hybrid App按網頁語言與程序語言的混合,通常分為三種類型:多View混合型,單View混合型,Web主體型。
【多View混合型】
即Native View和Web View獨立展示,交替出現。2012年常見的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和國內的WeX5、AppCan和Rexsee都屬於Web主體型移動應用中間件。其中Rexsee不支持跨平台開發。appMobi和PhoneGap除基礎的底層能力更多是通過插件(Plugins)擴展的機制實現Hybrid。AppCan除了插件機制,還提供了大量的單View混合型的介面來完善和彌補Web主體型Hybrid App體驗差的問題,接近Native App的體驗。而WeX5則在揉合PhoneGap和Bootstrap等主流技術的基礎上,對性能進一步做了深度優化,不但完全具備Native
App對本地資源的調用能力,性能體驗也不輸原生;WeX5所開發出來的app具備完全的跨端運行能力,可以無需任何修改直接運行在各種前端環境上。
從分析可見,Hybrid App中的Web主體型只要能夠解決用戶體驗差的問題,就可以變成最佳Hybrid App解決方案類型。
『貳』 如何使用HTML5技術開發Hybrid App
Hybrid App(混合模式移動應用)是指介於web-app、native-app這兩者之間的app,兼具「Native App良好用戶交互體驗的優勢」和「Web App跨平台開發的優勢」。
1、AppCan
AppCan是國內Hybrid App混合模式開發的倡導者,AppCan應用引擎支持Hybrid App的開發和運行。並且著重解決了基於HTML5的移動應用"不流暢"和猜消和"體驗差"的問題。使用AppCan應用引擎提供的Native交互能力,可以讓HTML5開發的移動應用基本接近Native App的體驗。[3]
AppCan作為中國Hybrid混合應用開發、移動平台、移動雲平台的倡導者和領導者,以「免費+開源+開放」的互聯網模式,為廣大開發者提供一站式的移動應用開發支持服務。[4] 與此同時,從移動應用開發、管理、運營、安全四個方面,為各級政府和企事業單位,構建運營一體化的企業移動平台,企業通過個性化的移動運營門戶,增強客戶服務品質,提升整體經營管理水平。
現在,正益移動AppCan行業解決方案已成功應用於金融、航空、政府、石化、傳媒等領域,客戶包括東方航空、國家電網、中化集團、泰康人壽、新華社等眾多大型企業,贏得了市場廣泛認可,是國內企業移動信息化領域的龍頭企業。[4]
2、Appcelerator
Appcelerator的Titanium開發平台使開發者可以通過HTML、PHP、JavaScript、Ruby、Python等Web編程語言開發手機、平橋沒板和桌面的原生App。其優勢在於它可以讓用戶輕松地訪問超過300個API以及定位信息。
此外,Appcelerator提供針對特定行為或事件定製的統計。App的數據既可儲存在雲端,也可儲存在設備上。
3、Kerkee
Kerkee是一個多主體共存型Hybrid框架,具有跨平台、用戶體驗好、性能高、擴展性好、靈活性強、易維護、規范化、集成雲服務、具有Debug環境、徹底解決跨域問題。[2]
從開發者角度來說,它支持三種的團隊開發模式:
針對Web開發者:
這種模式其中的一個場景是:只會Web開發,卻不會Native開發的開發者提供了一系列的平台型介面。這種方式具有開發周期短,跨平台等優點。
針對Native開發者 :
這種開發模式的其中一個場景是:Native開發者想要截獲Web頁面的數據或者對數據進行自己的處理,或者Web頁面中的行為進行修改。在這個時候,Kerkee框架將會為他們帶來便利。
針對Web開發者和Native團隊共同合作的開發團隊 :
對於這種模式的團隊,kerkee框架具體更開放更透明的協作,並且嚴格地隔離各自職責。各得Web團隊和Native團隊把主要精力定位到各自的模塊上,有利於各自的模塊優化到極致。
4、WeX5
WeX5採用混合應用(hybrid app)開發模式, UI體系完全基於w3c的html5+css3+js;引入jquery和bootstrap並對移動做了底層優化,效率和性能接近原生應用。穗盯WeX5本機API Framework採用phonegap(cordova)框架。[5]
5、APICloud
APICloud是一款「雲端一體」的移動開發平台,信仰「雲端一體」的理念,重新定義了移動應用開發。APICloud為開發者從「雲」和「端」兩個方向提供API,簡化移動應用開發技術,讓移動應用的開發周期從一個月縮短到7天。APICloud由「雲API」和「端API」兩部分組成,可以幫助開發者快速實現移動應用的開發、測試、發布、管理和運營的全生命周期管理。
6、PhoneGap
PhoneGap是一個免費且開源的開發環境,使開發者可以開發出在Android、Palm、黑莓、iPhone、iTouch及iPad等設備上運行的App。其使用的是HTML和JavaScript等標準的Web開發語言。開發者使用PhoneGap進行開發,可調用加速計、GPS/定位、照相機、聲音等功能。
PhoneGap還提供Adobe AIR App以及在線的培訓課程,幫助開發者了解原生API並在他們自己的平台上開發移動App。
7、NativeScript
NativeScript是使用移動平台的 JavaScript 引擎來進行跨平台開發。邏輯部分自然無需多說,關鍵在於如何使用平台特性。NativeScript是通過反射得到所有平台 API,預編譯它們,然後將這些 API 注入到 JavaScript 運行環境,接下來在 Javascript 調用後攔截這個調用,並運行 native 代碼。NativeScript是使用大量 web 開發的技巧來進行 app 開發,因為工具鏈和語言都非常熟悉受到了很多前端開發者的歡迎。
8、Kinvey
Kinvey同樣是一個為移動應用開發者提供後台創建服務的平台。Kinvey強調加速移動應用開發與銷售的「即取即用」理念。Kinvey的中間層與數據層均託管在多個雲服務提供商處,包括 Rackspace、Amazon與Microsoft。所有通過Kinvey存儲的數據都會有四種方式備份:Amazon EC2、Windows Azure、Rackspace以及Kinvey自己的伺服器,假如其中一兩個出現了故障,用戶的數據依然安然無恙。[6]
9、ExMobi
ExMobi通過全面的數據集成技術和豐富的跨平台客戶端展現能力,將業務系統快速、安全、高效的移植於移動終端。ExMobi從開發(IDE環境)、集成(IT系統對接、雲服務)、打包(各個操作系統的應用打包)、發布(應用的運行)、管理(日誌管理,更新管理)上提供了一套完整的解決方案。並通過專業的培訓和支撐渠道為開發者提供可持續的學習和交流空間,掃除開發障礙。[7]
『叄』 使用html5開發移動端應用採用什麼框架
使用html5開發移動端應用採用什麼框架?h5移動端應用其實是web app的一種,在手機端瀏覽器進行訪問,不用安裝可以直接訪問,基於瀏覽器內核的一種開發框架,因為是web所以包含頁面、資料庫和後端三個大的方向。
H5技術在HTML3基礎上加了很多時尚前營的技術,如視頻、音頻、繪圖、section標簽等,搭配BootStrap柵格系統能開發出非常幫的前端頁面。
H5 App Web開發框架和工具詳解
H5 app Web開發框架頁面開發技術非常的多,選擇其中幾種就能開發出一款好的前端框架,除了基本的三個要素(HTML、CSS和JavaScript)外,還有基於JS的二次開發前端框架,如:Bootstrap、Vue.Js、JQuery等,Hthml5和Bootstrap搭配是不錯的方案。
H5 app Web開發框架資料庫分為關系型資料庫和非關系型資料庫,關系型資料庫主要有SQL Server、MYSql和Oracle,性關系型資料庫也叫Nosql(是不用寫sql語句的資料庫,呵呵~~),主要有Redis、Mogodb、MemberCache等。
H5 app Web開發框架後端技術也有很多,比如.Net、JAVA、API、WebService等,.NET的MVC架構,JAVA的J2EE,都是很主流的後端架構。