リリースビルドする際に、ログ出力しないように設定したものの
adb logcat でログを見てみるとキッチリ出ていました。
原因究明に数時間使ってしまったので
他の人もハマらないようにメモ

環境

Android Studio 3.0.1
Build #AI-171.4443003, built on November 10, 2017
JRE: 1.8.0_152-release-915-b01 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Windows 10 10.0
Gradle 4.1

Proguardでログ出力を削除するには

以下のようにします。

build.gradle

    buildTypes {
        release {
            // プロガードを有効にする場合は true にする
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }

ハマリポイント

Proguardの設定ファイルproguard-rules.proで
デフォルトの設定で
ユーティリティログクラスがコメントアウトされてました…

proguard-rules.pro
# strip logging
#-assumenosideeffects public class android.util.Log {
#    public static *** v(...);
#    public static *** d(...);
#    public static *** i(...);
#    public static *** w(...);
#    public static *** e(...);
#    public static *** wtf(...);
#}
#-assumenosideeffects public class android.util.Log;

なので

proguard-rules.pro
# strip logging
-assumenosideeffects public class android.util.Log {
    public static *** v(...);
    public static *** d(...);
    public static *** i(...);
    public static *** w(...);
    public static *** e(...);
    public static *** wtf(...);
}
#-assumenosideeffects public class android.util.Log;

こうします。ビルドして…
これでログが出ないようになります。

Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.