2015-10-21 81 views
1

我gradle這個配置是:如何使用Android的ProGuard只能與優化功能

minifyEnabled true 
shrinkResources true 
proguardFile 'proguard-rules.pro' 

我要來縮小我的應用程序的大小。因此我使用proguard來實現這一點。但是,我不想更改我的類名稱和方法名稱。因此,我嘗試關閉除混淆外的所有Android ProGuard功能。

而我的proguard-rules.pro如下: -dontshrink -dontusemixedcaseclassnames -dontpreverify -optimizations !code/simplification/arithmetic,!code/simplification/cast,!field/*,!class/merging/* -optimizationpasses 5 但是,-dontshrink似乎沒有效果。因此,我保留了很多班級,並且還要告誡他們。 但仍存在問題,如:

錯誤:執行任務':app:proguardDefaultConfigDebug'失敗。

Can't find common super class of [org/luaj/vm2/script/LuaScriptEngine$LuajCompiledScript] (with 1 known super classes) and [java/lang/Object] (with 1 known super classes)

和:

警告:a.a.a.a.a找不到CALSS org.apache.thrift.TEnum

+0

你能否讓你的問題更清楚一點? – anthonymonori

回答

0

引用看來,Android的Dalvik的有自己的優化規則。因此,在android sdk中,建議使用-dontoptimze。因此,我的臨時解決方案是現在禁用它。