2017-02-09 74 views
-1

最近我決定將我的android項目遷移到傑克和吉爾構建鏈。但是現在我面臨着以前的構建鏈中沒有的多重dex問題,所以我的問題出現了。傑克和吉爾縮小等效

什麼是「真正的minifyEnabled」使用傑克&吉爾的調試版本以及是否新鏈提供自動清除未使用的庫代碼的任何方式當等效?

下面我提供我當前的代碼引起DEX問題:

defaultConfig { 
    applicationId "xxx" 
    minSdkVersion 16 
    targetSdkVersion 25 
    versionCode getVersionCode() 
    versionName getVersionName() 
    jackOptions{ 
     enabled true 
    } 
} 

buildTypes { 
    release { 
     proguardFiles getDefaultProguardFile('proguard-android-optimize.txt') 
     signingConfig signingConfigs.release 
    } 
    debug { 
     proguardFiles getDefaultProguardFile('proguard-android-optimize.txt') 
     useProguard true 
    } 
} 

我會感謝您的幫助,謝謝!

+0

你有沒有嘗試離開'minifyEnabled TRUE'在那裏? AFAIK這是同一面旗幟。 – weston

+0

是的,它的效果如下: 「錯誤:配置項目出現問題」:app'。 >使用Jack時不支持縮小用於測試的變體。 –

回答

0

我讀過的東西沒有說明有任何關於minifyEnabled true需要改變。而傑克確實支持它並使用multidex。

來源:http://tools.android.com/tech-docs/jackandjill#TOC-Overview

...Jack also handles any requested code minification (shrinking and/or obfuscation). The output is then assembled into an APK file as normal. Including support for multiple dex files if you have enabled that support.

傑克的收縮和混淆不支持所有的proguard相關的選項。然而。有一個列表在這裏:

http://tools.android.com/tech-docs/jackandjill#TOC-Shrinking-and-Obfuscation-support

+0

調試{ proguardFiles getDefaultProguardFile( 'proguard的-Android的optimize.txt') useProguard真 minifyEnabled真正 } 結果: 「錯誤:發生了配置項目 ':應用程序'>涅槃用於變種使用Jack時不支持測試。「 –

+0

對,顯然你不能把它放在'defaultConfig'中。 http://stackoverflow.com/questions/37314760/android-how-to-perform-obfuscation-with-the-jack-compiler – weston