2014-10-21 3 views
0

ProGuard에게 어떻게하지 않을 수 있습니까?ProGuard로 "public static final"을 직접 번역하지 마십시오

In Class A 
    Toast.makeText(getApplicationContext(), Utility.NO_SESSION, 0).show(); 
-> with ProGuard <-- 
    Toast.makeText(getApplicationContext(), "Please login", 0).show(); 

In Class Utility 
    public static final String NO_SESSION = "Please login"; 
-> with ProGuard <-- 
    this string does not even exist 

이는 정말 그들이 일정한를 검색해야하거나 인라인 여부 리버스 엔지니어링 코드를 읽는 사람에게 차이는 없습니다

+1

? 이 행동은 프로 가드의 요점입니다, 당신이 그것을 좋아하지 않는다면 왜 프로 가드를 사용하고 있습니까? – Okas

+0

컴파일 된 코드를 디 컴파일 후 쉽게 읽을 수있게하려면 Proguard를 비활성화하십시오. Proguard의 목적은 컴파일 된 응용 프로그램을 최소화, 최적화 및 난독 화하는 것입니다. –

+0

나는 그들이 프로 가드 (proguard)가 상수 (in-lining) 상수 (in-lining constant)를 읽기 쉽게 만들어 준다고 생각합니다. – weston

답변

0

을 읽기가 쉬울 것입니다.

그러나 당신은 당신이 추가 할 수 있습니다 좋아하는 경우 :

-keep class your.package.Utility { public static *; } 

에 당신의 당신이 달성하려고하는 무엇 proguard-project.txt