混合应用技术选型
?
?
混合應用技術選型
?
越來越多的公司選擇使用 hybrid開發(fā)模式來做app,我司在一些個別項目上也采用了這樣的架構,目前來看整體還可以,但是也是有很多的坑要去填。
?
目前開發(fā)APP的三種形式:
1、客戶端(純原生)+服務端(php/java/...)
2、客戶端(原生+html5)+服務端(php/java/...)
3、客戶端(webap(SPA))+服務端(node環(huán)境+vue/react/...)
?
方案一應該是目前主流公司的標準開發(fā)模式,我們公司以前的產(chǎn)品也大都以這種方式來進行;
優(yōu)點:體驗好,客戶端操作穩(wěn)定;
缺點:發(fā)布版本升級太麻煩
?
方案二采用原生+h5的方式來配合,使用的原則是用戶使用的一級頁面或者主框架頁面采用原生語言來開發(fā),比如:登錄、首頁、我的賬戶首頁等;所有的二級頁面均采用H5開發(fā)。
優(yōu)點:開發(fā)速度快,升級方便
缺點:原生和H5交互比較復雜
?
方案三使用一些SPA框架,比如vue、react等。利用這些框架以組件的形式進行開發(fā)頁面切換成不同的組件有利于復用,服務端必須使用node環(huán)境包裝一層再和服務端交互,或者直接使用node做服務端
優(yōu)點:開發(fā)速度快,頁面利用率高
缺點:目前來開沒有網(wǎng)絡等情況交互不友好,生產(chǎn)使用情況很少
?
我們根據(jù)調(diào)研結(jié)果采用了第二種方案,但是使用第二種方案又會面臨很多問題:
1、原生和H5用戶狀態(tài)如何來同步?
2、原生和H5如何相互交互使用
3、如何保證信息不泄露
?
解決方案:
1、用戶登錄后下發(fā)token,用戶在客戶端登錄后將token存儲,原生請求帶上token;每次點擊H5頁面請求的時候?qū)oken存入cookie,瀏覽器會自動帶上cookie以識別用戶狀態(tài)。
2、使用WebViewJavascriptBridge來解決H5調(diào)用原生接口的問題。
?
?
?
與50位技術專家面對面20年技術見證,附贈技術全景圖總結(jié)
- 上一篇: Qt之QPushButton
- 下一篇: 你所未知的3种 Node.js 代码优化