【问题标题】:ADT - 20 Proguard gives error with external jarsADT - 20 Proguard 使用外部 jar 时出错
【发布时间】:2026-02-09 11:20:03
【问题描述】:

我使用的环境是 ADT 20 版,eclipse(Juno) 4.2 版

在我的android项目中,我需要删除Log才能在Google Play上发布它,所以我尝试使用Progaurd,我对progaurd完全陌生,所以我在Google上搜索并找到了这段代码sn-p

-assumenosideeffects class android.util.Log {
    public static *** d(...);
    public static *** v(...);
    public static *** i(...);
}

我在proguard-project.txt 的底部添加了这个,在project.properties 文件中我取消了注释

proguard.config=${sdk.dir}\tools\proguard\proguard-android.txt:proguard-project.txt

这是project.properties文件的评论部分提到的

然后我导出了 apk,并将其安装在模拟器中。 它显示了我添加到项目中的外部 jar 的错误。

看起来有问题的 Jar 是 ormlite

做错了什么?我错过了什么?

请帮帮我

谢谢,

【问题讨论】:

    标签: android proguard ormlite apk


    【解决方案1】:

    您还需要排除 ORMLite 类。请参阅以下关于 ORMLite 和 proguard 的讨论:

    Proguard with OrmLite on Android

    【讨论】:

      【解决方案2】:

      在 ADT 版本 20 中,默认情况下禁用优化,因此不会删除日志语句。要启用优化,您必须选择project.properties中的优化ProGuard配置文件:

      proguard.config=${sdk.dir}/tools/proguard/proguard-android-optimize.txt:proguard-project.txt
      

      【讨论】:

      • 我已经通过那行代码启用了 progaurd,但它也从 ormlite.jar 中删除了一些类