Qigsaw 是一個基於 Android App Bundles 的動態模組化函式庫。它支援動態交付分割 APK,而無需重新安裝基礎 APK。
自述文件中文版
將 qigsaw-gradle-plugin 作為依賴項導入到專案根目錄下的主 bu build.gradle
中:
buildscript {
dependencies {
classpath ' com.iqiyi.android.qigsaw:gradle-plugin:1.4.1-hotfix01 '
}
}
然後透過將以下行新增至app/build.gradle
來「套用」插件並匯入相依性。
dependencies {
// qigsaw core lib
implementation " com.iqiyi.android.qigsaw:splitcore:1.4.1-hotfix01 "
}
.. .
.. .
apply plugin : ' com.iqiyi.qigsaw.application '
最後,透過將以下行新增至您的dynamicfeature/build.gradle
來「應用」另一個插件。
.. .
.. .
apply plugin : ' com.iqiyi.qigsaw.dynamicfeature '
考慮到每個應用程式都有自己的下載器,qigsaw 僅提供一個介面 Downloader,您需要實作它。從範例 SampleDownloader 中了解更多。
Qigsaw-gradle-plugin 會上傳需要在編譯過程中動態交付的拆分 APK,因此您必須實作 SplitApkUploader 將拆分 APK 上傳到您自己的 CND 伺服器。從範例 SampleSplitApkUploader 中了解更多。
如何安裝Qigsaw?從範例 QigsawApplication 中了解更多。
對於 proguard,我們已經透過 qigsaw-gradle-plugin 自動進行了 proguard 配置。
對於 multiDex,請從範例 multidexkeep.pro 了解更多。
有關更多 qigsaw 配置,請從範例 app/build.gradle 中了解更多資訊。
如何安裝拆分APK? Qigsaw 提供了與 Play Core Library 相同的 API,因此您可以閱讀 google 開發人員文件來安裝。
如何建置基礎APK和拆分APK?在開發過程中,您可以使用qigsawAssembleDebug
任務或只需點擊Android Studio中的Run
app來建置。發布應用程式時,使用qigsawAssembleRelease
任務來建置。
如何更新分割?請參閱我們的拆分更新指南。
Qigsaw 目前無法更新或支援某些問題。
Qigsaw 支援 Android App Bundle 尚不支援的一些功能。
Applicaton#attachBaseContext
和Applicaton#onCreate
方法來分割應用程式。有關貢獻、問題或拉取請求的更多信息,請查看我們的 Qigsaw 貢獻指南。
Qigsaw 已獲得麻省理工學院許可。閱讀許可證文件以了解詳細資訊。