微信开放小程序SDK,几款SDK产品对比分析
前言
這幾天看到微信團隊推出了一個名為 Donut 的小程序原生語法開發移動應用框架,通俗的講就是將微信小程序的能力開放給其他的企業,第三方的 App 也能像微信一樣運行小程序了。
其實不止微信,面對廣闊的B端市場,阿里也早已開放了這樣產品——mPaas,只不過阿里沒有兼容市面中占比和使用范圍最大的微信小程序,所以一直處于不溫不火的狀態。
今天就主要對比分析下目前市面上這類產品的技術特點及優劣。
有這些產品
目前這類產品有一個統一的技術名稱:小程序容器技術。
小程序容器顧名思義,是一個承載小程序的運行環境,可主動干預并進行功能擴展,達到豐富能力、優化性能、提升體驗的目的。
目前我已知的技術產品包括:mPaas、FinClip、uniSDK 以及上周微信團隊才推出的 Donut。下面我們就一一初略講下各自的特點。
他們的特點
1、mPaas
mPaaS 是源于支付寶 App 的移動開發平臺,為移動開發、測試、運營及運維提供云到端的一站式解決方案,能有效降低技術門檻、減少研發成本、提升開發效率,協助企業快速搭建穩定高質量的移動 App。
mPaaS 提供了包括 App 開發、H5 開發、小程序開發的能力,只要按照其文檔可以開發 App,而且可以在其開發的 App 上跑 H5、也可跑基于支付寶小程序標準開發的的小程序。
由于行業巨頭之間互不對眼,目前 mPaas 僅支持阿里生態的小程序,不能直接兼容例如微信、百度、字節等其他生態平臺的小程序。
2、FinClip
FinClip 是一款小程序容器,不論是移動 App,還是電腦、電視、車載主機等設備,在集成FinClip 小程序 SDK之后,都能快速獲得運行小程序的能力。
提供小程序 SDK 和小程序管理后臺,開發者可以將已有的小程序遷移部署在自有 App中,從而獲得足夠靈活的小程序開發與管理體驗。
FinClip 兼容微信小程序語法,提供全套的的小程序開發管理套件,開發者不需要學習新的語法和框架,使用FinClip IDE、小程序管理后臺、小程序開發文檔、FinClip App就能低成本高質量地完成從開發測試,到預覽部署的全部工作。
3、Donut
Donut 多端框架是支持使用小程序原生語法開發移動應用的框架,開發者可以一次編碼,分別編譯為小程序和 Android 以及 iOS 應用,實現多端開發。
基于該框架,開發者可以將小程序構建成可獨立運行的移動應用,也可以將小程序構建成運行于原生應用中的業務模塊。該框架還支持條件編譯,開發者可靈活按需構建多端應用模塊,可更好地滿足企業在不同業務場景下搭建移動應用的需求。
4、uniSDK
Uni-app 小程序 SDK,是為原生 App 打造的可運行基于 uni-app 開發的小程序前端項目的框架,從而幫助原生 App 快速獲取小程序的能力。uni 小程序 SDK 是原生SDK,提供 Android 版本 和 iOS 版本,需要在原生工程中集成,然后即可運行用uni-app框架開發的小程序前端項目。
Unisdk是 uni-app 小程序生態中的一部分,開發者 App 集成了該 SDK 之后,就可以在自有 App 上面跑起來利用 uni-app 開發的小程序。
優劣勢對比
1、各自的優勢
mPaas
● 大而全,App開發、H5開發、小程序開發一應俱全;
● 技術產品來源于支付寶,背靠螞蟻金服有大廠背書;
● 兼容阿里系的小程序,例如支付寶、釘釘、高德、淘寶等;
● 擁有小程序管理端、云端服務。
FinClip
● 小而巧,只專注小程序集成,集成SDK后體積增加3M左右,提供小程序全生命周期的管理 ;
● 提供小程序轉 App 服務,能夠一定程度解決 App 開發難的問題;
● 幾個產品中唯一支持企業私有化部署的,可進行定制化開發,滿足定制化需求;
● 兼容微信小程序,之前開發者已擁有的微信小程序,可無縫遷移至 FinClip;
● 多端支持:iOS、Android、Windows、macOS、Linux,國產信創、車載操作系統。
Donut
● 微信的親兒子,對微信小程序兼容度有其他廠商無可比擬的優勢(但也不是100%兼容微信小程序);
● 提供小程序轉 App 服務,能夠一定程度解決 App 開發難的問題;
● 體驗分析支持自動接入功能,無需修改代碼即可對應用中的所有元素進行埋點;
● 提供豐富的登錄方法:微信登錄、蘋果登錄、驗證碼登錄等。
uniSDK
● 開源社區,眾人拾柴火焰高;
● uniapp 開發小程序可遷移至微信、支付寶、百度等平臺之上,如果采用 uni 小程序 SDK,之后采用 uni-app 開發小程序,那么就可以實現一次開發,多端上架;
● 免費不要錢。
2、各自的不足
mPaas
● 小程序管理略簡單,沒有小程序全生命周期的管理;
● App 集成其 SDK 之后,體積會擴大 30M 左右;
● 不兼容微信小程序,之前微信開發的小程序,需要用支付寶小程序的標準進行重寫才可遷移到 mPaaS 上;
● 目前只支持 iOS 與 Android 集成,不支持其他端。
FinClip
● 沒有對應的移動應用開發平臺,只專注于做小程序;
● 生態能力相較于其他三者相對偏弱,但兼容微信語法可一定程度補齊;
● 暫不支持 Serveless 服務;
● 產品快速迭代,既有驚喜,也有未知。
Donut
● 對小程序的數量、并發數、寬帶上限等有比較嚴格的規定;
● 目前僅處于 beta 階段,使用過程有一定 bug 感;
● 集成后體積增加明顯,核心 SDK 500 MB,地圖 300 MB;
● 沒有小程序全生命周期的管理;
● 目前僅支持 iOS 與 Android 集成,不支持其他端。
uniSDK
● 開源社區,質量由開源者背書,在集成、開發過程當中出現問題,bug解決周期長;
● uni 小程序 SDK 僅支持使用 uni-app 開發的小程序,不支持純 wxml 微信小程序運行;
● 目前 uni 小程序 SDK 僅支持在原生 App 中集成使用,暫不支持 HBuilderX 打包生成的 App 中集成;
● 目前只支持 iOS 與 Android 集成,不支持其他端。
以上就是關于幾個小程序容器的測評分析結果,可以看出并沒有完美的選擇,每個產品都有自己的一些優勢和不足,選擇適合自己的就是最好的。希望能給需要的同學一定的參考,如果你有更好的選擇歡迎交流討論。
總結
以上是生活随笔為你收集整理的微信开放小程序SDK,几款SDK产品对比分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 评WSO2/WSF系列框架之设计
- 下一篇: sql优化的15个小技巧