如何只为一个模块启用proguard

How to enable proguard for only one module

我有一个集成了 payumoney 的支付应用程序。在我添加混淆器之前它工作正常。最近我将 Proguard 添加到我的 build.gradle 文件(模块:app)

  ` buildTypes {
    release {
        minifyEnabled true
        shrinkResources true
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        signingConfig signingConfigs.config
    }
}` 

当我继续付款时,此应用程序关闭后。当我将 minifyEnabled 更改为 false 时,它工作正常。

以下是我的Module:PayuMoneySdkBuild.gradle文件

`buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }`

我该如何解决这个问题?我无法禁用proguard。

我可以只为 Module:app 启用混淆器吗?它会解决问题吗?

我是编程新手。请帮忙!!

add below lines in proguard-rule.pro file

 -dontwarn okio.**
 # Platform calls Class.forName on types which do not exist on Android to determine platform.
 -dontnote retrofit2.Platform
 # Platform used when running on Java 8 VMs. Will not be used at runtime.
 -dontwarn retrofit2.Platform$Java8
 # Retain generic type information for use by reflection by converters and adapters.
 -keepattributes Signature
 # Retain declared checked exceptions for use by a Proxy instance.
 -keepattributes Exceptions


-keep class com.** { *; }

解决方法是查找需要免除的方法和类,添加到proguard规则中,如下..

-keep class com.mm.** {*;}
-keep class com.company.** {*;}
-keepclassmembers  class com.mm.** {*;}
-keepclassmembers  class com.company.** {*;}