【技術】Hybird App中原生頁面 VS H5頁面

2021-03-02 庖丁技術轉化中心
導讀:Web App和原生app有很多大牛們都做過比較詳細的比較以及優劣勢分析,作者主要對Hybrid App來簡要分析下,談談Hybrid App裡原生頁面和H5頁面的比較和分析。

來源/網絡;導讀/庖丁技術

現有3類主流APP,分別為:Web App、Hybrid App(混合模式移動應用,Hybrid有「混合的」意思)、 Native App(原生app,後面都用「原生app」來描述)。Web App和原生app有很多大牛們都做過比較詳細的比較以及優劣勢分析,我主要對Hybrid App來簡要分析下,談談Hybrid App裡原生頁面和H5頁面的比較和分析。

Hybrid APP指的是半原生半Web的混合類App。需要下載安裝,看上去類似Native App,但只有很少的UI Web View,訪問的內容是 Web 。

現在不少app已經使用H5頁面來代替原生頁面(即Hybrid APP),兩種方式具有不同的用戶體驗。剛好最近遇到公司想用H5頁面來代替原生頁面,了解了下,並把所有的問題以及知識點都記錄下來。

原生頁面和H5頁面的優劣勢分析

其各自的優劣勢也有很多前輩都已經總結過了,我稍微記錄並歸納下(本文中的相對/相比較都是針對這兩種方式而言的)。


原生頁面


優勢:

(1)運行速度比較快

(2)能使用設備的底層功能,如攝像頭、方向傳感器、重力傳感器、撥號、GPS、語音、簡訊、藍牙等

(3)在界面設計、功能模塊、操作邏輯等層面相較web更易做到App的便捷性和舒適性,功能更加強大

(4)節省流量

劣勢:

(1)不同的作業系統(如Android和iOS)需要獨立的進行開發,使用其各自的開發包、開發工具和控制項

(2)每次有更新,都需要重新打包一次發布到應用平臺上,且每次要向各個應用商店進行提交審核。之後用戶需要手動進行點擊更新安裝(安裝成本較高)

(3)開發成本比較高,尤其需要適配各種機型時(如Android應用,需要適配各種Android手機)

H5頁面


優勢:

(1)由於是運行在瀏覽器上,所以只需要開發一次便可以在不同的作業系統上顯示

(2)迭代版本時,不需要打包便可以發布(實時更新、快速迭代),與雲端實現實時數據交互

(3)開發成本相對較低,對瀏覽器的適配較簡單,且發布門檻相對較低

劣勢:

(1)每次打開頁面,都得重新加載,獲取數據...

(2)過於依賴網絡,速度無法保證。特別在弱網環境下,不僅耗費流量而且加載緩慢,就算是WiFi情況下也不容樂觀

(3)只能使用有限的設備底層功能(無法使用攝像頭、方向傳感器、重力傳感器、撥號、GPS、語音、簡訊、藍牙等功能)

(4)仍處於發展階段,部分功能無法在基於現有技術的瀏覽器基礎上實現,且無法全面的顯示最完美的用戶體驗,只能用現有技術去彌去找最佳解決方案

如何區分Hybrid APP中的原生頁面和H5頁面


一直在想一個問題,原生頁面和H5頁面到底是憑啥區分的?看了網上很多大牛是從頁面的設計上來區分的。如:(1)頂部顯示網頁連結;(2)有加載的進度條;(3)沒有底部tab導航欄;(4)頂部顯示兩個導航條;(5)有懸浮圓圈/標識;等可以區別出H5頁面的幾種方式。
然而現在越來越多的應用開始弱化這些表象。【Hybrid App裡面一般(1)、(2)、(4)點已經被弱化,除了微信(等..),用的還是加載進度條(微信的加載進度條簡直要逼瘋我的節奏,特別是網速特別慢的情況下,就眼睜睜看著他到不了盡頭)】

附上微信的進度條....(已醉)

下面,以淘寶為例,給大家看看...真的是怎麼都識別不出來啊!!

由上圖得知,是否有懸浮圓圈/標識無法區別出H5頁面

由上圖得知,是否有底部tab導航欄也無法區別出H5頁面。

問了公司的程式設計師,結果還是一頭霧水,只有灰溜溜的去尋求度娘的幫助,果然找到了。


設置-開發者選項-顯示布局邊界

H5中使用了webview控制項,其作為一個控制項,只有一個邊界框,所以通過這一點,就比較容易區分出一個界面是webview實現的還是原生布局控制項實現的,當然也不排除用一堆webview來拼成一個界面的實現方法。

如下圖是一個原生與webview混排的界面,紅色線框是各控制項的繪製邊界,中間那一大塊布局豐富的界面沒有顯示出很多邊界紅色,就是H5實現的。


原生頁面還是H5頁面?對這兩種開發模式分別進行比較,分別得出幾種各自適用的場景
選擇原生頁面的幾點理由:

1.使用定位功能

如果需要用到GPS定位功能,以前只能使用原生的API來查看用戶的位置信息,但現在大多數的主流瀏覽器上都嵌入了W3C Geolocation API。安裝了WebKit的設備或是配置了Opera或Mozilla瀏覽器的設備,均可以獲取用戶的位置信息。這在技術上已經沒有太大的困難,然而卻受到隱私保護條例的限制。加入定位功能,意味著給網站引入了一些敏感信息,可能會導致嚴重的後果。而原生app的位置信息必須經過用戶授權,排除了隱患。

2.使用攝像頭

如果需要用到攝像頭功能,原生開發者能夠簡化拍照的過程,直接在客戶端對照片做一些處理,只有需要的時候才上傳伺服器。W3C正在開發一個訪問攝像頭的API,但現在還沒有將這部分工作正式整合到瀏覽器中。


3.使用感應器(方向傳感器、重力傳感器等)


4.訪問文件系統

訪問文件系統常會涉及到安全和用戶隱私保護的問題。惡意應用程式可能會修改或刪除你的數據。行動裝置越來越私人化,在行動裝置上保存了大量用戶的個人信息、朋友信息及商業信息,保存在本地的數據更加安全且可以為用戶提供更加有針對性的服務,這要求開發者須獲得用戶的授權後才能訪問用戶的私人數據。則原生app更容易做到這點。

訪問文件系統時至關重要的一點就是在沒有獲得用戶授權的情況下,不要訪問任何用戶的私人數據。而這一點,往往被大多數應用忽略了。W3C正在為移動開發商開發相關的標準API,但目前該工作尚未完成。

5.提供離線服務

使用原生頁面可以將數據保存在本地並進行讀取,可以實現離線服務,在無網或弱網情況下,更深得用戶喜愛。

選擇H5頁面的幾點理由:


1.功能開發不完善,試運營階段(試錯成本低),快速收集用戶反饋信息及時更新

2.應用須適應多個作業系統,且資源/預算有限制

3.技術強,能夠極力解決由網速引起的頁面不順暢問題

4.不滿足原生app條件之一,且能做到第三點的完善,並隨著越來越豐富的功能接口可供開發者調用,web app比原生app更合適

5.非核心需求,在功能調整或內容的運營上很靈活

6.階段性的營銷活動,希望被分享出去

總結


我覺得混搭使用這兩種開發模式是最符合當下web技術發展以及app的發展背景的,像淘寶就把原生頁面和H5頁面融合的天衣無縫,也儘可能的用技術解決了H5頁面的劣勢問題。當然,各企業需要根據自身的條件以及戰略來選擇適合自己的開發模式,合理配置資源。

【聲明】庖丁技術尊重行業規範,非原創文章均註明原文作者和來源,所轉載的文章版權均屬於原作者。如有侵權請及時聯繫刪除。

相關焦點

  • 北京聖誕節醫療H5頁面開發團隊
    =self.location)top.location=self.location; 在頁面中使用類似如下的js,有很多的版本,我就列舉其中一個。雙十一。製作流程1、更換背景:打開人人秀編輯器,選擇背景,更換背景。在更換背景中,您可以上傳自己設計的長頁面,也可以在我們的背景庫中尋找合適的使用。3、停止翻頁:對於單頁的長頁面,可以勾選停止翻頁。
  • 北京萬聖節裂變H5頁面費用
    目前,#H5案例#標籤聚合頁面仍在完善中,後續將為您提供豐富、全面的關於#H5案例#的新資訊、#H5案例#圖片信息、視頻內容,讓您時間了解到關於#H5案例#的熱門信息。小編將持續從百度新聞、搜狗百科、微博熱搜、知乎熱門問答以及部分合作站點渠道收集和補充完善信息。展會。
  • 北京萬聖節h5活動頁面價格
    北京萬聖節h5活動頁面價格    H5頁面製作工具八:秀米  秀米這H5頁面製作工具主要分為秀製作和圖文排版,相對於其他的頁面製作工具突出的特在於其圖文排版,頗具特。無論是圖文排版還是秀製作,都是免費的,模板種類多樣,可以進行外鏈,值得一提的是,都有新手引導,通過詳盡的新手引導,讓你更快的掌握秀米頁面製作工具的操作技巧。
  • 如何搭積木式的快速開發H5頁面?
    設計初衷筆者最開始開發這個項目的主要目的是提高個人和企業開發 H5 頁面的成本和效率, 可以通過搭積木的方式, 利用已有組件庫或外部組件資源(正在設計)搭建出適合不同場景的 H5 應用, 並且支持一鍵下載代碼, 讓技術人員輕鬆將H5頁面部署到自己的伺服器中.
  • 深圳原創H5頁面開發團隊
    深圳原創H5頁面開發團隊 高精印刷、所見即所得 你的印刷書會看起來跟在屏幕上一樣,有圖桌面版在圖像保真度,拼版還原度上保持高保證還原,甚至不會改變一個像素,加上高精尖的印刷設備和一流的檢測方案,100%還原您得。 自動文本流,讓您輕鬆設計 有圖桌面版允許您創建流文本。 這意味著你可以相互連結文本框連續顯示你的副本在單個頁面或在多個頁面。
  • 【放心省心】武漢萬聖節H5頁面設計
    武漢萬聖節H5頁面設計CreateJS 提供了 TweenJS 支持動畫開發,同時通過 SoundJS 和 PreLoadJS 提供了音頻和預下載的支持,對於 H5 基礎功能的支持是足夠的。在兼容性方面,CreateJS 支持 PC 端和移動端幾乎所有的瀏覽器。此外,CreateJS 還支持用 flash CC 開發導出由 CreateJS 渲染的 H5 。h5小程序。
  • 微交互:移動端APP頁面跳轉方式分析
    一、移動端APP頁面跳轉方式今天討論的主題是移動端APP中原生頁面的跳轉方式。從交互角度定義這個概念:「在當前頁面,觸發某個交互動作之後,頁面之間是如何轉換的」。需要明確的是:自然的跳轉與承接方式、整個應用內類似場景的跳轉一致性,既可以幫助用戶更好的建立對產品的認知,也有利於降低用戶的使用成本。
  • APP界面設計之頁面布局的22條基本原則
    移動APP頁面布局(Layout)是我們設計app界面的時候,最主要的設計任務。一個app的好與不好,很大部分取決於移動APP頁面布局的合理性。下圖為APP最原始的布局模型。移動APP經典布局界面欣賞,以首頁為例展示:頁面布局顧名思義就是對頁面的文字、圖形或表格進行排布、設計。優秀的布局,需要對頁面信息進行完整的考慮。即要考慮用戶需求、用戶行為,也要考慮信息發布者的目的、目標。
  • H5 手機 App 開發入門:技術篇
    所謂的 H5 頁面,其實就是混合 App 的前端,外面是一個原生的殼,裡面是 Web 網頁。本文緊接上一篇,介紹手機 App 開發的技術棧,尤其是跟 H5 開發相關的技術。它與混合技術棧的區別是,不使用 Web 技術,即它的頁面不是 HTML5 頁面,而是使用自己的語法寫的 UI 層,然後編譯成各平臺的原生 App。這個技術棧就是純粹的容器技術棧,React Native、Xamarin、Flutter 都屬於這一類。學習時,除了學習容器的 API Bridge,還要學習容器提供的 UI 層,即怎麼寫頁面。
  • H5頁面製作免費工具大集合
    H5如此勢頭,不得不讓營銷人對H5頁面的未來充滿了期待,越來越多的人開始在營銷中運用H5頁面。其實在移動端各個領域,H5頁面的叫法很多,也會稱為翻翻看、手機微雜誌、廣告頁、場景應用、海報\畫報(動態海報、指尖海報、掌中海報、動畫海報、微畫報、微海報)等等,經常能見到的就是滑動翻頁。
  • 哪裡可以免費製作手機H5專題頁面?
    其實,這種都是用H5製作的專題頁面。常見的H5專題頁樣式有很多種,有純靜態化獨立頁面,有動態展示的多頁面,也有靜態和動態相結合的頁面樣式,通常根據需求的不同,設計與製作的周期和價格也不一樣。那麼,你知道哪裡可以免費製作手機H5專題頁面嗎?
  • APP loading頁面:淺析「先進入再loading」的交互方法
    兩種分類從順序上看,就是加載數據和進入頁面,哪個放在前面。下面我們具體的看一下這兩種分類。先loading再進入在一個頁面中點擊一個button或者一個入口時,app會先加載完下一個頁面的所有數據之後,再進行跳轉操作,下一個頁面的所有樣式布局、所有的數據,都是在加載完該頁面所有的模塊之後,才會跳轉並顯示出來。
  • H5頁面製作工具,實力推薦
    今天就來給大家推薦一個超實用的H5頁面製作工具——ih5.cn,零代碼就能夠輕鬆製作酷炫H5。  它是一個網站,打開網頁就能在線編輯H5頁面,並且擁有720°全景、重力感應、跨屏互動、畫圖互動等超多交互組件。
  • 西林縣醫療行業H5製作
    你應該需要的就是這樣一個頁面我來說下怎麼做的這個頁面需要的部分主要是1 輸入正確信息需要彈出的結果頁面2 輸入錯誤需要彈出的頁面3 一維數組是用來查詢資料庫輸出的4 導入表格的資料庫其他就是 當前的輸入框和查詢按鈕首先我們要導入資料庫新建一個資料庫
  • APP頁面上下滑動及彈回效果實現
    下拉刷新以及上拉滑動頁面,是每個app都具備的最基礎的交互效果,本文旨在模擬一個大概效果,細節可忽略。,是需要被移動的內容;上下拖動拖動外層【屏幕動態面板】時,垂直移動內層的【內容動態面板】,同時要設定頁面的頂部及頁面的底部邊界範圍,不能出界。
  • iH5——秒殺PPT的H5頁面製作工具
    很多H5頁面製作工具基於雲端,不需要軟體支持,而且只要有網絡就能修改,效率和效果分分鐘秒殺PPT。下面就來體驗一下最近我挖掘的展示神器iH5吧。首先從傳統的視覺上面,傳統的跳轉,淡入淡出等形式,已經有些落伍了!
  • 怎麼用html5新增元素製作用戶註冊頁面?這個例子告訴你!
    表單數據提交是網站中比較常見的用戶交互行為,在html頁面中常見的是註冊表單,提交數據前,會檢查表單數據的完整性,是否出現漏填、誤填)。如果出現漏填、誤填會提示用戶提示用戶,確保填寫數據準確有效。在檢查表單數據數據一般都是使用php或者JavaScript,今天為大家介紹怎麼使用html5新增元素製作用戶註冊頁面並進行檢查的數據檢查。
  • h5頁面製作教程之微信抽獎案例
    微信朋友圈裡一些H5頁面分享連結的標題例如「我用9步圍住了神經貓」、「今天是我活著的第8753天」、「一起來為冬奧會扛旗,我是第20568位志願者」這種會隨著用戶操作而改變的標題是怎麼做的呢,下面小編就一個H5案例(標題是「我用x次抽到了x等獎」)來跟大家分享一下如何實現這種效果。
  • 微信小程序學習(創建新頁面)
    我們學習完註冊小程序,添加新建的項目後,下面要創建一個簡單的頁面,設置標題,並從首頁跳轉到這個頁面,具體有以下幾個步驟:1、新建一個項目後,在pages 中添加一個目錄,選中page,右擊滑鼠,在彈出的菜單裡,選擇新建一個文件夾test,完成後如圖
  • Web前端開發基礎教程:認識h5和html5,以及前端和全棧之間的關係
    html5是html網頁標準的5.0版本,5.0版本相比4.0的版本,新增了很多的技術內容。這次的變化是比較大的,甚至是革命性的,他的誕生帶動了很多技術領域的發展,尤其是在我們的移動端設備上面,因此我們今天談論的htm5這個詞,它已經產生了一些變化,它代表的已經不再是簡單的,html的網頁設計標準,而是圍繞著html這個東西,以及它周邊的一系列網頁相關技術的總稱。