我在我的应用中使用Retrofit。一切都运行正常但是当我创建应用程序的发布版本时,一些调用无效。
问题是什么?我已经在我的gradle文件中禁用了minifyEnabled
。
修改 发现真正的问题: 我通过特定的API调用获取用户数据。我将这个映射到以下类:
String ID;
String user_login;
String user_nicename;
String user_email;
String display_name;
出于某种原因,除了ID之外,所有字段都被填充。当我不使用发布但调试时,ID字段会被填充。
答案 0 :(得分:1)
在DTO所在的位置保持包装不变:
public SedimentaryRock(int sampleNumber,int weight) {
super(sampleNumber, weight);
super.setDescription("sedimentary");
}
答案 1 :(得分:1)
试试这个:
-dontnote okhttp3.**, okio.**, retrofit2.**
-dontwarn retrofit2.**
-keep class retrofit2.** { *; }
如果上面的代码不起作用,那么像这样向模型类添加 @Keep
注释。
import androidx.annotation.Keep;
@Keep
public class Blog {
private String id;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}
答案 2 :(得分:0)
确保为改造提供了具体规则。
如果您已启用android:foreground="?android:attr/selectableItemBackground"
android:clickable="true"
,那么
在minifyEnabled=true
文件中添加以下改进规则
proguard-rules.pro