首页 文章

proguard不会忽略引用的库

提问于
浏览
6

我使用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 ..........您应该检查是否需要指定其他程序jar . 警告:有277个未解析的类或接口引用 . 您可能需要指定其他库jar(使用'-libraryjars') . java.io.IOException:请先纠正上面的警告 . 在proguard.Initializer.execute(Initializer.java:321)的proguard.ProGuard.initialize(ProGuard.java:211)proguard.ProGuard.exe(ProGuard.java:86)在proguard.ProGuard.main(ProGuard.java: 492)

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

2 回答

  • 2

    正如您所尝试的那样,您应该将这一行放在 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中的配置) .

  • 6

    只需将这些行添加到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.**
    

相关问题