我正在从服务器获取数据,它在调试apk中工作正常,但是我正在尝试生成签名的apk,数据未从服务器获取数据。
有什么办法可以解决吗?
答案 0 :(得分:0)
您需要为所有网络模型添加@Keep
注释(如果您或您的库使用反射)。因为proguard混淆了签名apk中的所有类,并且Gson无法将JSON解析为您的模型。
编辑:
例如,您有一个要从json解析的类(NetworkResponse.java
类):
@Keep
public class NetworkResponse {
// fields of class...
}
答案 1 :(得分:0)
Proguard可能导致了该问题。请检查您的应用程序gradle文件中是否已启用它。
这些行使Proguard可以发布版本:
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
如果是,那么您将需要保留一些字段。
查看此内容:https://developer.android.com/studio/build/shrink-code