我使用Android Studio的JAR / AAR文件导入对话框导入了一个库。但是,ProGuard会混淆这个库,因此这些类中的方法在我的其他模块中不可见。
我尝试在生成的库目录中的build.gradle文件旁边创建一个名为proguard-rules.pro的文件。但是,ProGuard没有提取此文件,尽管这是我预期会发生的。
我导入的库JAR在包com.merchant.lib
下的两个子包中有4个类。这些是我添加的ProGuard网站。
-keep class com.merchant.lib.** { *; }
Android Studio生成的build.gradle文件如下:
configurations.maybeCreate("default")
artifacts.add("default", file("merchant-lib.jar"))
我希望ProGuard能够保持JAR文件中的类完好无损,无需任何修改。但是ProGuard仍在处理这个JAR文件,我无法访问这些类。
如何防止ProGuard混淆库文件?
从jar文件中获取包名称并使用-dontwarn
-dontwarn com.sun.mail.**
-dontwarn javax.mail.**