java - 如何避免混淆 Firebase 模型字段?
问题描述
我正在尝试混淆我的 android 应用程序,但是当我生成 apk 作为版本并在设备上运行时,我的 firebase 字段名称会被更改。还有一些字段数据没有上传到firebase实时数据库,例如System.currentTimeMillisecond()、passwd。
我的应用程序在没有混淆的情况下工作正常并正确插入所有数据。混淆后它的行为不正确并且没有将一些数据正确地插入到firebase中。
预期节点:
-userid
-name:"abc"
-age:15
-passwd:"pass@123"
-timestamp:16003243241
混淆后:
-userid
-a:"abc"
-b:15
我的用户模型类
public class UserModel{
public int age;
public String name,passwd;
public long timestamp;
public UserModel(){}
public UserModel(String name, String passwd, int age, long timestamp){
this.name=name;
this.passwd=passwd;
this.age=age;
this.timestamp=timestamp;
}
}
我已申请 build.gradle: app
buildTypes {
release {
minifyEnabled true
shrinkResources=true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
前卫:
-keep class yourpackage.** { *; }
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-verbose
我有 min sdk 23 和 target 28。请帮我正确地混淆数据。
解决方案
推荐阅读
- bash - Centos sh - 在执行命令中植入变量
- javascript - 如何使用 jquery 从随机维基百科页面获取数据
- c# - 将键/值项列表添加到 C# 中的自定义配置元素
- c# - 配置 Asp.net MVC 项目和 EntityFramework 以使用 Redis 作为缓存提供程序
- java - 带有 java 应用程序的 Burp Suite 代理
- c# - 如何在 TrulyObservableCollection 中通知单个属性更改或修改
- c# - 如果可以的话,我们应该总是按 ref 返回吗?
- html - 通过谷歌地图记录海拔剖面点
- c - 如何在 Frama-C 中使用 vstmt_aux 访问我的语句
- android - 代码生成的单选按钮检查选择