2012-08-15 2 views
8

ProGuard를 사용하여 Android 앱을 난독 화하려고합니다. Proguard 난독 화 및 일반 방법

는 여기 클래스

public class Book implements DBbinded 

그리고

private void storeDBObjects(ArrayList<? extends DBbinded> dbObjects) 

이 방법의 호출이 java.lang.ClassCastException가를 throw하는 일반적인 방법을 가지고 : java.util.LinkedHashMap 난처 후. 이 문제를 해결하기 위해 proguard.properties에 무엇을 써야합니까?

답변

0

이것은 ProGuard의 버그 일 수 있습니다. the latest version 설치가 도움이되는지 확인해야합니다 (현재 ProGuard 4.9 베타 1 : android-sdk/tools/proguard/lib에 proguard4.9beta1/lib/proguard.jar 복사). 그렇지 않으면 ProGuard's bug tracker에 문제를 신고 할 수 있습니다.

7

난 그냥이 문제가 발생했습니다 및 -keepattributes ProGuard 인수 아래에 '서명'특성을 지정하여 해결했습니다.

-keepattributes SourceFile,LineNumberTable,Signature,*Annotation* 

저는 ProGuard 버그라고 생각하지 않습니다. 희망이 도움이됩니다.

+2

그래, 서명은 args에 있습니다! – OceanLife

+0

위에서 언급 한 것 외에도, 예외 클래스 – schnatterer

+0

Sweet를 없애기 위해'keepclassmembers 클래스 <정규화 된 클래스 이름>'을 추가해야했습니다. 추가 해줘서 고마워. – OceanLife