proguard不会忽略引用的库

时间:2013-03-22 11:13:06

标签: android proguard

我使用proguard,在proguard-project.txt中,我有忽略引用类的行

-dontwarn com.google.ads。**

日志说:

  

警告:com.flurry.android.ab:找不到引用的类com.google.ads.InterstitialAd   警告:com.flurry.android.ab:找不到引用的类com.google.ads.InterstitialAd   警告:com.flurry.android.ab:找不到引用的类com.google.ads.InterstitialAd   警告:com.flurry.android.ab:找不到引用的com.google.ads.AdRequest类   警告:com.flurry.android.ab:找不到引用的类com.google.ads.AdRequest

     

..........

     

您应该检查是否需要指定其他程序罐。   警告:有277个未解决的类或类引用   接口。你可能需要   指定其他库jar(使用'-libraryjars')。 java.io.IOException:请更正以上内容   警告先。在   proguard.Initializer.execute(Initializer.java:321)at   在proguard.ProGuard.execute(ProGuard.java:86)的proguard.ProGuard.initialize(ProGuard.java:211)   在proguard.ProGuard.main(ProGuard.java:492)

我将-libraryjars ./libs/FlurryAgent.jar包含在congig文件中。我的问题是什么?

2 个答案:

答案 0 :(得分:6)

正如您所尝试的那样,您应该将这一行放在proguard-project.txt

-dontwarn com.google.ads.**

您必须确保ProGuard实际使用此配置文件,并在project.properties中使用此行:

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

这是Android SDK r20或更高版本的标准行(旧版本仅使用proguard.config=proguard.cfg,在这种情况下,您必须指定整个配置,而不是依赖SDK中的那个)。

答案 1 :(得分:2)

只需将这些行添加到proguard-android.txt。

# Flurry SDK support
-dontwarn com.google.ads.**
-dontwarn com.inmobi.androidsdk.**
-dontwarn com.jumptap.adtag.**
-dontwarn com.millennialmedia.android.**
-dontwarn com.mobclix.android.sdk.**
-dontwarn com.flurry.android.monolithic.sdk.**