android 如何保护类不被MINIFY_ENABLED删除?

umuewwlo  于 2023-03-11  发布在  Android
关注(0)|答案(1)|浏览(101)

我在我的项目中使用FirebaseFirestore。当我在调试模式下,minifyEnabled FALSE,应用程序运行得很好,但当我构建一个签名的.apk,minifyEnabled TRUE,它不像我预期的那样工作。即它不从Firebase Firestore加载数据。

我应该写什么KEEP语句来排除FIREBASE FIRESTORE和Glide类的缩小?

dependencies {
implementation 'com.android.support:appcompat-v7:28.0.0'

implementation 'com.google.firebase:firebase-core:16.0.9'
implementation 'com.google.firebase:firebase-firestore:19.0.0'
implementation 'com.google.firebase:firebase-ads:17.2.0'
}
7eumitmz

7eumitmz1#

**解决方案:**ProGuard重命名了几乎每个类。它重命名了我的模型类(Pojo),我用它来封装Firestore的数据,Firestore只识别这个名称,在我的情况下,是“Upload”。

但是当proguard重命名它时,它将“Upload”类命名为“j“,并且Firestore SDK不识别“j”。

  • 这就是问题所在 *

我用“Upload”类添加了“@Keep“注解,问题就解决了。

@Keep
public class Upload{
.....
.....
}

相关问题