Ant를 사용하여 응용 프로그램을 컴파일 할 때 자세한 Proguard 출력을 볼 수 있으며 로그 명령문 (아래 참조)을 제거하도록 설정했지만 모든 APM 릴리스 로그 문을 실행할 때 거기에 제거하려고했다.Proguard가 로그 호출을 제거하지 않습니다.
두 개의 프로젝트가 각각 공통 프로젝트를 포함하고 있습니다. 2 개의 주요 프로젝트와 공통 프로젝트에는 각각 proguard.cfg 파일이 있으며이 파일에는 모두 로그 문을 제거하는 스 니펫이 들어 있습니다.
내가 누락 된 것이 있습니까?
** 내 모든 로그 문은 Log.d (...)
proguard.cfg
-optimizationpasses 5
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-dontpreverify
-verbose
-dontobfuscate
-forceprocessing
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
-keep public class * extends android.app.Activity
-keep public class * extends android.app.Application
-keep public class * extends android.app.Service
-keep public class * extends android.content.BroadcastReceiver
-keep public class * extends android.content.ContentProvider
-keep public class * extends android.app.backup.BackupAgentHelper
-keep public class * extends android.preference.Preference
-keep public class com.android.vending.licensing.ILicensingService
-keepclasseswithmembernames class * {
native <methods>;
}
-keepclasseswithmembers class * {
public <init>(android.content.Context, android.util.AttributeSet);
}
-keepclasseswithmembers class * {
public <init>(android.content.Context, android.util.AttributeSet, int);
}
-keepclassmembers class * extends android.app.Activity {
public void *(android.view.View);
}
-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keep class * implements android.os.Parcelable {
public static final android.os.Parcelable$Creator *;
}
-assumenosideeffects class android.util.Log {
public static *** d(...);
public static *** v(...);
}
걱정 되듯이 두 번 확인되었습니다. Ant 배포판에 대한 Log.d o/p 중 아무 것도 볼 수 없습니다. Logcat o/p를 PID로 필터링하면 dalvik GC_CONCUURRENT 항목이 표시됩니다. – NickT
이 문제가 있습니다. 나는 Proguard 4.4를 실행한다 – ron