2016-03-20 88 views
1

我嘗試從發佈版本的自定義proguard文件的代碼中刪除所有Log的方法調用。所以,我寫我的自定義ProGuard的文件(帶淨):如何使用Proguard文件?

proguard-rules-release.txt

-assumenosideeffects class android.util.Log { 
    public static boolean isLoggable(java.lang.String, int); 
    public static int v(...); 
    public static int i(...); 
    public static int w(...); 
    public static int d(...); 
    public static int e(...); 
} 

增加它在build.grade

android { 

    buildTypes { 

     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 
        'proguard-rules.txt', 'proguard-rules-release.txt' 
     } 
    } 
} 

但是,當我在Android Studio中讀取*.class文件被反編譯在~/app/build/intermediates/classes/release我發現它包含所有調用以及沒有proguard文件。

我在做什麼錯?

ADDED 我反編譯的apk文件甚至。現在,我確定我的proguard文件不起作用。 我改寫了build.gradle這樣:

release { 
      minifyEnabled false 
      zipAlignEnabled true 
      proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 
        'proguard-rules.pro' 
} 

和生成的簽署的apk文件反編譯後,它......但是這一切都同樣具有日誌輸出。我什麼也不懂......

回答

1

我發現我做錯了。 Imma noobie。答案在我的文章中...

minifyEnabled false 

此選項啓用|禁用支持proguard文件。
也許有人會有同樣的問題。