滴滴披露首個開源項目VirtualAPK 四大特點曝光
至頂網CIO與應用頻道 06月30日 北京消息:滴滴出行今日披露了首個開源項目VirtualAPK,該款插件化框架可幫助企業隨時通過更新插件的方式來發布新功能,包括修復嚴重crash或進行業務「試錯」,擁有功能完備、基本無入侵、插件可輕鬆訪問宿主代碼和資源、高兼容性這四大核心優勢。
滴滴方面表示, VirtualAPK支持四大組件和幾乎所有的Android特性,且插件開發等同於原生Android開發。該項目在內部已得到成功驗證,在迭代過程中不斷的進行高密度機型適配和細節特性支持,運行狀態穩定,足以支撐滴滴部分乃至全部業務的動態發版需求。
目前開發者可登陸Github(https://github.com/didi/VirtualAPK)查看該項目的詳細介紹和源代碼,也可在滴滴的開源平台上(https://didi.github.io/)獲取更多信息。
在傳統APP發布過程中,大多數開發者採用固定時段發版節奏,比如兩周或一個月更新一次,但如果一個新版本發布運行後發現存在大量crash,此時大多數公司會選擇立刻發一個緊急版本,但緊急版本雖然可解決燃眉之急,但在用戶體驗方面將造成不可挽回的損失。
除此之外,還有一種常見情況,比如早期創業公司,需要通過迅速「試錯」來嘗試找准市場方向,要進行頻繁發版,甚至一天一發,但在正常發版流程中,顯然不現實。
VirtualAPK有效解決了上述問題,通過VirtualAPK將業務模塊插件化,就可以隨時通過更新插件的方式來發布新功能,無論是修復crash還是業務「試錯」都可以高效進行。
實際上,市場上已經有很多優秀的開源插件化框架,滴滴之所以選擇自行研發VirtualAPK,相關負責人稱,首先,大部分開源框架支持的功能還不夠全面。除了DroidPlugin,大部分都只支持Activity。
其次,兼容性問題嚴重,大部分開源方案不夠健全。由於國內Rom嘗試深度定製Android系統,這導致了諸多的插件框架的兼容性問題,而目前已有的開源方案中,除了個別開源方案外,其他方案對兼容性問題的適配度嚴重不足。
第三,已有的開源方案不適合滴滴的業務場景,雖然DroidPlugin從功能的完整性和兼容性上來看,是一款非常完善的插件框架,然而它的使用場景和滴滴的業務不符,DroidPlugin側重於載入第三方獨立插件,比如微信,並且插件不能訪問宿主的代碼和資源。而在滴滴打車中,其他業務模塊均需要宿主提供的訂單、定位、賬號等數據,因此插件不可能和宿主沒有交互。
基於上述,滴滴自行研發了這款插件化框架,它功能全面、兼容性好,還能夠適用於有耦合的業務插件,這就是VirtualAPK存在的意義。業內認為,在載入耦合插件方面,VirtualAPK可以說是開源方案的首選。
※紅帽推首個生產就緒的開源超融合基礎架構
※AMD銳龍Pro桌面處理器:性能與性價比兼顧 提供更佳的商用解決方案
TAG:ZD至頂網 |
※開啟第一個WeChat Applet項目開發之旅
※CNCF 新增另一個開源項目:etcd
※GitHub 熱門項目:PyTorch 資源大全
※最火的五大 python 開源項目
※十大天王項目之Go Network開啟眾籌
※Repulse Game Studio將推出第二個VR項目《伊拉貢》
※快速開啟你的第一個項目:TensorFlow項目架構模板
※Viptela+Cisco首個項目落地聯想
※GitHub 熱門項目:Python Fire
※Aeromet確保NATEP為A20X粉末開發項目HighSAP提供支持
※曼谷新CBD,火熱地段新項目Knightsbridge Space RAMA9
※SM-現代車,第二個合作項目「SOLATI Moving Hotel」公開!
※從零開始PyTorch項目:YOLO v3目標檢測實現
※銳成芯微布局RISC-V,加入SiFIVE DesignShare項目
※Github 項目推薦 用PyTorch 實現 OpenNMT
※如何用Angular5創建一個PWA項目
※NEXO BlockHub項目速遞
※Python web開發:Flask的項目配置
※Karmin更新Aripuan?鋅項目開發
※《達爾文項目》Early Access即將開啟