2014-01-06 1 views
1

ant debug으로 디버그 apk를 만들 때 내 오픈 소스 Android 앱에 ProGruad를 사용하고 싶습니다. ProGuard의 최적화 만 사용하고 코드 난독 화 설정, 즉 기본적으로 $ANDROID_HOME/tools/proguard/proguard-android-optimize.txt의 ProGuard 구성을 사용하지 않습니다.개미 디버그 빌드의 경우에도 최적화 전용 설정으로 ProGuard를 호출하려면 어떻게해야합니까?

그러나 -obfuscate 작업을 Android의 build.xml에서 수행 한 ProGuard 호출은 debug 대상에서 사용할 수 없습니다. 어떻게 활성화 할 수 있습니까?

답변

2

debug 빌드를 사용하는 경우에도 프로 가드를 호출하도록 Android 개미 구축 시스템을 구성하려면 두 변수 (proguard.enabledout.dex.jar.input.ref)를 설정해야합니다.

다음은 구성 예입니다. custom_rules.xml 파일을 프로젝트 루트에 직접 저장하십시오.

custom_rules.xml

<project name="android_rules" default="debug"> 
    <!-- Zap debug-obfuscation-check from SDK's build.xml so that it 
     can't set proguard.enabled to false !--> 
    <target name="-debug-obfuscation-check"/> 
    <target name="-pre-build"> 
    <condition property="proguard.enabled" value="true" else="false"> 
     <isset property="proguard.config" /> 
    </condition> 
    <if condition="${proguard.enabled}"> 
     <then> 
    <echo level="info">Proguard.config is enabled</echo> 
    <!-- Secondary dx input (jar files) is empty since all the 
      jar files will be in the obfuscated jar --> 
    <path id="out.dex.jar.input.ref" /> 
     </then> 
     <else> 
    <echo level="info">Proguard.config is disabled</echo> 
     </else> 
    </if> 
    </target> 
</project> 
관련 문제