如何修复这些proguard警告

Mus*_*sir 9 android proguard android-studio

我在我的项目中使用第三方库,从那时起proguard发出这些警告,我无法与该库相关,这是我正在使用的库:Lollipin.

警告我得到了

Warning:android.databinding.DataBindingUtil: can't find referenced class android.databinding.DataBinderMapper
Warning:android.databinding.ViewDataBinding: can't find referenced class android.databinding.DataBinderMapper
Warning:there were 43 unresolved references to classes or interfaces.
Warning:Exception while processing task java.io.IOException: Please correct the above warnings first.
Run Code Online (Sandbox Code Playgroud)

我试过了什么?

我编辑过proguard-rules.pro像这样:

-keeppackagenames com.github.orangegangsters.lollipin
Run Code Online (Sandbox Code Playgroud)

仍然没有去!我也试图清理和重建项目,但也没有成功.

这是build.gradle:

apply plugin: 'com.android.application'

 android {
compileSdkVersion 24
buildToolsVersion '24.0.2'

defaultConfig {
    applicationId "com.example.teach"
    minSdkVersion 15
    targetSdkVersion 24
    versionCode 27
    versionName "5.0"
}
buildTypes {
    release {

        minifyEnabled true
        shrinkResources true
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
    }

}


}

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')

compile 'com.android.support:appcompat-v7:24.2.1'
compile('com.mikepenz:materialdrawer:5.6.0@aar') {
    transitive = true
}
compile ('com.github.orangegangsters:lollipin:2.0.0@aar') {
    transitive = true
}

 compile 'com.google.android.gms:play-services-ads:9.6.0'


}
apply plugin: 'com.google.gms.google-services'
Run Code Online (Sandbox Code Playgroud)

请帮帮我!谢谢!

小智 22

我遇到了同样的问题,所以我将以下更改添加到我的proguard.cfg中

-dontwarn android.databinding.**
-keep class android.databinding.** { *; }

-dontwarn okio.**
-dontwarn retrofit2.Platform$Java8
-keepclasseswithmembers class * {
    @retrofit2.http.* <methods>;
}
Run Code Online (Sandbox Code Playgroud)

  • 前两行对我来说已经足够了 (3认同)

小智 0

尝试:

-dontwarn com.github.orangegangsters.lollipin
Run Code Online (Sandbox Code Playgroud)

代替

-keeppackagenames com.github.orangegangsters.lollipin
Run Code Online (Sandbox Code Playgroud)