混合WebRTC應用vs.原生WebRTC應用

WebRTC的特性使得它成為開發者和使用者兩者的絕佳選擇。你需要在原生和混合WebRTC應用中做出選擇。當然要考慮你自己的目標和可供使用的資源來進行抉擇。你可以不使用任何第三方框架建立一個WebRTC應用。

一個普通的使用者會非常喜歡一個完全不需要安裝和更新第三方外掛的音影片聊天軟體。如果你正在找一個適合進行商業通話的實時通訊平臺的話,WebRTC依舊是一個好選擇,端到端加密技術使WebRTC可以保證資料傳輸的安全性。但是即便你完全確信WebRTC移動版軟體就是你所需要的,那麼你離真正開始研發工作也還差一步之遙。

在本篇文章中,我們會嘗試對比一下原生和混合WebRTC應用之間的主要區別。

混合WebRTC應用vs.原生WebRTC應用

WebRTC原生應用的優缺點

當我們不看WebRTC只談論原生應用的時候,它主要的好處是對一個特定平臺開發所帶來的一系列有點。通常,這種應用會比混合應用更快。另一個有點就是有可能獲取硬體的全部許可權。

如果你計劃建立一個高效能的應用,比如一個有很多3D畫面和動畫的手機遊戲,那麼原生應用是一個很明顯的選擇。但是如果你正在猶豫那種解決方案對於你未來的聊天軟體來說是最合適的,這裡有幾點宣告值得記下了。

WebRTC不是平臺本身的特性而是針對一個特定的瀏覽器來說的。所以對硬體的要求不是你事先需要擔心的事情。

WebRTC應用不需要非常高階的效能就能夠平穩執行,給使用者帶來良好的體驗感。除此之外,WebRTC應用不需要原生應用提供的特定硬體功能的使用許可權。這需要開發者指定針對特定的移動平臺開發原生WebRTC應用,可能會造成額外的開銷。

即便你無需擔心資源受限,還有一個關於WebRTC應用的重要的事情必須記住。直到2017年中旬,蘋果都沒有支援WebRTC。

終於,蘋果公司宣佈iOS 11+版本支援WebRTC技術。JavaScript API在Safari 11版本中被應用,並且在新版本的iOS和macOS系統中也將可用。這樣的話,你就必須百分百確認你的目標使用者沒有使用過時的(在你開始開發自己的WebRTC應用之前的)軟體。

安卓方面,沒有什麼可以限制你。原生WebView早在4。4版本的時候就支援WebRTC。所以只要你不打過時安卓裝置市場的主意的話,你就不會遇到任何困難。如果你沒有其他選擇必須做一個基於WebRTC的iOS應用,你就應該考慮一下混合應用。

WebRTC混合應用的強勢及弱勢之處

如果你準備搭建一個混合應用,你可以依賴像JavaScript,CSS,和HTML這類的網路技術。這樣的應用可以被看做一個執行在網頁瀏覽器上的典型HTML 5應用。

從使用者的角度來看,混合和原生WebRTC應用並沒有多大區別。區別可能會在高負載的情況下顯現出來。原因就是混合應用必須使用對於一個特定平臺來說並不是最佳的程式碼。

除此之外,原生應用不提供硬體的完整許可權。想要實現對裝置許可權的獲取,以及提供與原生應用相似的使用者體驗度,就需要依靠開發者所搭建的框架了。

好處是原生應用可以在不同的平臺上重新使用一段程式碼。如果你的目標使用者使用的是不同的瀏覽器和作業系統的話,你不需要聘請好幾組WebRTC開發人員來實現目標。因為不需要清楚某種特定瀏覽器的規範,所以混合應用開發起來會更快,更省錢。

混合應用開起來可能像是原生應用的廉價版本。混合應用的執行速度更慢,不能使用移動裝置的全部許可權,並且只是一個裝作是原生應用的HTML 5應用。

但是眾多的混合應用給這種選擇拉票不少,像印象筆記,蘋果商店,Gmail,Uber和其他很多軟體都是混合應用。你肯定用過上述軟體中的至少一款,並且你可能從未遇到嚴重的卡頓和錯誤。我們想說的是,高效能並不是有些軟體的必不可少的要求。

對於WebRTC來說,獲取特定硬體的許可權也不是必需的。所以,在絕大多數情況下,使用者根本注意不到原生和混合WebRTC應用之間的差別。

總結

總而言之,當我們必須在原生和混合應用中做出一個選擇的話,事情會變得比較簡單。如果你想要高效能的話,那麼就選原生應用,但是要準備好服務一些額外的時間和資源來針對每個目標平臺編寫程式碼。

而混合開發過程是一個退而求其次的解決方案,如果你的應用不需要超高的效能的話,這會大幅減少你的研發開銷。

但是對於WebRTC應用來說,上一段所說的一些事情就變得無關緊要了。這類應用通常都不需要先進的效能。

混合應用能提供的硬體許可權對於開發一個完整功能的解決方案來說就足夠了。但是,如果我們將WebRTC作為核心技術來使用的話,這些事情是你應該技術的。

WebRTC直到最近才被蘋果所支援。蘋果宣佈會在Safari 11版本中加入WebRTC技術。但是此時此刻我們不清湖具體哪些特性會被實施。

在本文章的撰寫時間,根據應用商店(App Store)的資料,14%的使用者還是使用老舊的作業系統版本。很難預計未來這個資料會如何變化。但是如果你的目標使用者中有很大一部分使用的是蘋果的產品,你最好確認一下他們使用的是Safari 11或者更新的版本。