標籤:支援 tar 平台 複雜 源碼 之間 asc github 新項目
什麼是 Javascript bridge
隨著h5的不斷普及及最佳化,以及移動端對動態化的需求越來越大,開發人員經常需要在app中嵌入一些網頁,然後會在web和native之間進行互動,如傳遞資料,調用函數,而串連web與native需要一個橋樑,通常稱為javascript bridge,項目中選擇一個好的javascript bridge也非常重要。
Javascript bridge現狀
目前github上也有一些開源的,其中使用最廣的非WebViewJavascriptBridge、JsBridge莫屬,然而,最近剛開源了一個新項目DSBridge,號稱最好用的javascript bridge。筆者仔細對比了一下,DSBridge分分鐘秒殺所有啊。
下面是一篇DSBridge與WebViewJavascriptBridge的對比文章:DSBridge VS WebViewJavascriptBridge, 文章中各方面對比已經很詳細了,在此,簡單總結一下,以作記錄。
DSBridge 和 WebViewJavascriptBridge相比的主要特點:
- DSBridge真正跨平台!原版WebViewJavascriptBridge只支援ios,只不過有人在android上也實現了和WebViewJavascriptBridge相同的前端調用協議,所以可以在ios/android上使用同一套js調用協議,但本身來講,WebViewJavascriptBridge ios和android平台並非一家之作,所以也並沒有官方提供跨平台的支援人員,而DSBridge官方同時支援ios和android。
- DSBridge支援同步調用!這一點秒殺其它所有,可謂一騎絕塵。同步在複雜一點的應用中有多重要,相信使用過node的都應該深有感觸。原文中有仔細說明,請移步http://www.jianshu.com/p/d967b0d85b97。
- 三端友好; 無論是在ios、android或者 web,使用起來都非常簡單優雅,這一點和WebViewJavascriptBridge相比,簡直就是藝術。
- DSBridge為國人項目,有詳細中文文檔和問題反饋渠道。
其它
DSBridge雖剛剛開源,比較年輕,不像WebViewJavascriptBridge和javascript bridge那樣有著多年以來積累的使用者,目前知名度也並不高,但就github和作者部落格來看,目前已有一批使用者在使用,反饋都很不錯,作者對於反饋都能及時回應,最近github上 android版的英文文檔也已經補上,DSBridge需要一個宣傳和使用者積累的過程。DSBridge的測試覆蓋非常全,根據github上的最新更新記錄,增加了壓力測試,在非同步連續調用1萬次的情況下DSBridge依然堅挺!ios上支援ios7以上,同時允許自由選擇WKWebView和UIWebview,而Android端相對來說要簡單一些,相信你完全可以看懂其源碼。
DSBridge Github地址:
iOS: https://github.com/wendux/DSBridge-IOS
Android: https://github.com/wendux/DSBridge-Android
混合開發之DSBridge(同時支援Android和iOS)