首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android - Proguard模糊无法找到android类

Android - Proguard模糊无法找到android类
EN

Stack Overflow用户
提问于 2011-09-13 00:14:45
回答 1查看 1.6K关注 0票数 0

我无法在我的android项目上运行模糊处理。我一直收到100个错误,每个错误都说了类似的事情-

代码语言:javascript
复制
[javac]     /MyPath/LocationReceiver.java:34: cannot find symbol
[javac] symbol  : class Intent
[javac] location: class com.myPath.LocationReceiver
[javac]     public final void onHandleIntent(Intent intent) {

我需要去哪里找?我的build.xml文件指定了所有正确的android路径。

我的构建文件-

代码语言:javascript
复制
<property name="src.dir"     value="src/com"/>
<property name="build.dir"   value="build"/>
<property name="classes.dir" value="${build.dir}/classes"/> 
<property name="input.jar.file" value="${build.dir}/temp.jar"/>
<property name="obfuscated_sdk.jar.file" value="${build.dir}/MyName.jar"/>
<property name="proguard-home" value="/MyPath/proguard4.6" />
<property name="android-home" value="/MyPath/android-sdk" />
<property name="android-version" value="8" />
<property name="android-platform-specific" value="${android-home}/platforms/android-${android-version}" />
<property name="android-jar" value="${android-platform-specific}/android.jar" />

<target name="clean">
    <delete dir="${build.dir}"/>
</target>

<target name="build-sdk" depends="clean" description="compiles the sdk java files"> 
    <mkdir dir="${classes.dir}"/>
    <javac srcdir="${src.dir}"
             destdir="${classes.dir}"
             source="1.6"  
                 debuglevel="lines">
            <classpath>
                <path>
                    <pathelement location="${android-jar}" /> 
                </path>
            </classpath>
    </javac>
</target> 

<target name="create.input.jar" depends="build-sdk"> 
    <jar destfile="${input.jar.file}" basedir="${classes.dir}">
        <manifest>
            <attribute name="MyName" value="v1.0"/>
        </manifest>
    </jar>
</target> 

<target name="Obfuscate" depends="create.input.jar" description="shrink compiled classes">
    <taskdef resource="proguard/ant/task.properties" classpath="/MyPath/proguard4.6/lib/proguard.jar" />
    <proguard>
        -libraryjars "/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/classes.jar"
        -libraryjars "/MyPath/android-sdk/platforms/android-8/android.jar" 
        -injars      ${input.jar.file}
        -outjars     ${obfuscated_sdk.jar.file}  

</proguard>
    <delete file="${input.jar.file}"/>
    <delete dir="${classes.dir}"/>
    <delete dir="bin"/>
</target>

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-09-13 00:47:51

这听起来像是类路径问题。它可能与ProGuard没有任何关系,因为Android构建系统只在导出签名的.apk文件时调用它。另外,我相信Eclipse使用自己的构建系统,不依赖于build.xml。

可以尝试的内容:

  1. 确保您将项目创建为Android项目。
  2. 在包资源管理器中右键点击项目名称,选择Android Tools > Fix project Properties.
  3. Open项目属性,选择Android并确保你选择了一个项目构建目标。然后选择Java Build Path,并确保在库窗格中显示一个Android库。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7390871

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档