愛奇藝基於 Android App Bundle 動態化框架 Qigsaw 1.2.0 版本發佈啦

更新日誌以下:git

  1. 修復多ClassLoader模式,插件Application可能未初始化的問題。github

  2. 插件多ABI支持,依據用戶當前設備CPU架構及APK自身ABIs來加載對應插件ABI的Native Library。小程序

  3. 依據項目工程NDK配置以及APK文件lib目錄的ABI類型,來自動選擇內置插件存放APK lib仍是assets目錄。內置插件存放APK lib目錄可減小插件一次拷貝工做,節省用戶磁盤空間。架構

  4. Qigsaw Gradle Plugin 修復3.2~3.5兼容性bug。框架

  5. 調整Report相關接口,包括SplitLoadReporter、SplitInstallReporter等,提供更多插件信息供開發者投遞。工具

  6. SplitInstallReporter 和 SplitLoadReporter 失敗通知,包含已加載或安裝成功的插件數據。開發工具

  7. 應 Qigsaw 接入者需求,增長是否校驗插件簽名配置。詳情參考 SplitConfiguration 中 verifySignature 配置。插件

Qigsaw 是國內首款且惟一一款基於 Android App Bundles 的 Android 插件化技術。Android App Bundles 是 Google 於 2018 年推出的一款 全新應用分發流程,能夠在應用版本不更新的狀況下,動態加載插件。因爲 Android App Bundles 依託於 Google Play Service, 所以,在國內沒法使用該技術。Qigsaw 核心功能是利於 Android App Bundle 開發工具及周邊打包出 App 及插件,並自研一套 插件加載方案在應用運行期動態加載插件。日誌

其核心優點以下:視頻

  1. 徹底利用 Android App Bundle 開發工具,讓插件開發者享受極速開發體驗。
  2. 若是有國際化需求,Qigsaw 可無縫切換至 Android App Bundles 方案。
  3. Qigsaw Core SDK 徹底仿照 Android App Bundles 提供的公開 SDK 接口,開發者閱讀官方文檔便可開發。
  4. 超高穩定性,全局僅一處 Hook 和極少許私有 API 訪問。
  5. 插件接入改造很是方便,對開發者至關友好,開發者無需關心插件的分發及上傳,Qigsaw 提供一條龍服務。

Qigsaw 目前在愛奇藝 APP 矩陣中全面開花。愛奇藝 App 已接入插件數 8 個,包括百度小程序框架、愛奇藝小遊戲框架、小視頻、泡泡、彈幕等爲愛奇藝 App 節省包體積 18.5 M之多。 愛奇藝極速版在其項目立項階段就決定使用 Qigsaw 做爲縮減包體積的重要手段,目前已用 Qigsaw 減小 7M 之多的包體積。 愛奇藝內部其餘業務線包括好多視頻、遊戲中心、直播機等都已接入 Qigsaw。

Qigsaw 開源地址:github.com/iqiyi/Qigsa… 。 歡迎你們 Star 交流。

相關文章
相關標籤/搜索