2015-03-13 2 views
0

Использование Модернизированный на Android, у меня есть ответ JSON сJSON строку свойство со значением «1» преобразуется в ложном

{ 
    result: "1" 
} 

У меня есть класс Java

public class TestClass { 
    @SerializedName("result") 
    private Boolean myResult; 
} 

Но я получаю myResult == false, когда я HTTP GET JSON выше. Идеи?

+0

"1" - это строка. Таким образом, он возвращает false. –

+0

Вы можете написать собственный десериализатор –

ответ

2

Неверный тип. Строка не может быть проанализирована с помощью булева. Просто измените

private Boolean myResult; 

в

private String myResult; 

Если вы хотите, чтобы проверить его значение является ли 1 или нет, попробуйте создать метод для этого.

public boolean isMyResultOne() { 
    return myResult.equals("1"); 
} 
+0

Извините, но это не будет сделано. Retrofit предназначен для безопасного типа, мне нужно, чтобы это было логическое свойство – Shai

+0

Обновлен мой ответ о том, как достичь вашего результата. – nuuneoi