У меня возникают проблемы при попытке использовать модификацию с областью, когда мне нужно подобрать объект, у которого есть другой внутренний объект.
Проблема в том, что метод модификации .enqueue
никогда не получает обратного вызова, и похоже, что синтаксический анализ длится вечно.
Я получил это в журналах
Код работает, когда в приведенных ниже классах моделей нет другой модели (Album и Artist).
Простой разбор Json im. Это альбом с артистом внутри.
{
id: "2",
name: "CoverGirl",
image: "http://res.cloudinary.com/thefader/image/upload/s--Ky_sXRw2--/w_760,c_limit,q_jpegmini,f_auto/mila_j_cover_q96o4t.jpg",
bigger: false,
artist: {
id: 2,
name: "Mila J",
image: "http://www.billboard.com/files/styles/article_main_image/public/media/mila-j-pose-2015-billboard-650.jpg"
}
}
Класс альбома
public class Album {
private int id;
private String name;
private Artist artist;
...getter and setter for all attributes
}
Класс художника
public class Artist extends RealmObject{
private int id;
private String name;
...getter and setter for all attributes
}
И я называю это с помощью
Retrofit retrofit = new Retrofit.Builder()
.baseUrl("my_url_is_here")
.addConverterFactory(GsonConverterFactory.create())
.build();
GitHubService service = retrofit.create(GitHubService.class);
//The problem is here. the enqueue method stops here, and in the log cat show the messages that is in the image I publish
service.getAlbum().enqueue(new Callback<Album>() {
@Override
public void onResponse(Call<Album> call, Response<Album> response) {
System.out.println();
}
@Override
public void onFailure(Call<Album> call, Throwable t) {
System.out.println();
}
});
Я думаю, проблема в том, что мои модели расширяют RealmObject
, а модернизация по какой-то причине не может их проанализировать.
Мне просто нужно объяснение или, может быть, решение для этого. Любые ответы будут очень полезны.