刪除無用代碼,刪除model裏的get和set方法,減小外部庫的應用門等等<br>android
DexKnifegit
classpath 'com.ceabie.dextools:gradle-dexknife-plugin:1.5.9'
apply plugin: 'com.android.application' apply plugin: 'com.ceabie.dexnkife'
# 全局過濾, 若是沒設置 -filter-suggest 並不會應用到 建議的maindexlist. # 若是你想要某個包路徑在maindex中,則使用 -keep 選項,即便他已經在分包的路徑中. -keep android.support.v4.view.** # 這條配置能夠指定這個包下類在第二dex中. android.support.v?.** # 使用.class後綴,表明單個類. -keep android.support.v7.app.AppCompatDialogFragment.class # 不包含Android gradle 插件自動生成的miandex列表. -donot-use-suggest -split ** # 將 全局過濾配置應用到 建議的maindexlist中, 但 -donot-use-suggest 要關閉. #-filter-suggest # 不進行dex分包, 直到 dex 的id數量超過 65536. -auto-maindex # dex 擴展參數, 例如 --set-max-idx-number=50000 # 若是出現 DexException: Too many classes in --main-dex-list, main dex capacity exceeded,則 須要調大數值 -dex-param --set-max-idx-number=65536 # 顯示miandex的日誌. -log-mainlist # 若是你只想過濾 建議的maindexlist, 使用 -suggest-split 和 -suggest-keep. # 若是同時啓用 -filter-suggest, 全局過濾會合並