我在 android 中开发了一个带有 firebase 实时数据库的聊天应用程序,它将所有消息存储在 firebase 实时数据库中,并且它在调试模式下工作得很好但是当我创建一个签名构建时它会自动更改我的所有消息键入 a、b、c、d 等。例如,我存储了一条带有键“name”、“message”、“image”等的消息,消息在调试模式下使用这些键存储得很好,但在发布模式下所有这些键都变成了 a、b、c 等.如果有人可以帮助我,我将不胜感激。
1 回答
炎炎设计
TA贡献1808条经验 获得超4个赞
Proguard 混淆了您在应用程序中编写的代码。它会更改代码中的类名、变量名、函数名,以避免反编译您的应用程序。因此,无论何时您在 Firebase 中编写您的模型类,您所指的那些,您都可以使用混淆器从混淆中省略这些类。
为此,请按照下面提到的几个步骤操作。
转到
app/proguard-rules.pro
目录并打开proguard-rules.pro
文件。将以下几行添加到该文件
-保持类 com.yourpackage.model.DataModel{ public private *;}
上面一行将防止类 DataModel 被 Proguard 混淆。你必须在那个领域给出你班级的正确路径。
另外,不要忘记在模型类中注释变量,如下所示:
@SerializedName("yourKeyName") private int yourKey;
那些“yourKeyName”将用于序列化和反序列化对象。
添加回答
举报
0/150
提交
取消