Я звоню в API, который даст мне некоторые значения, а некоторые нет. Итак, я дал значения некоторых переменных по умолчанию. Но даже когда я не получаю их с сервера, они отображаются как нулевые в журнале, и приложение падает.
Вот класс модели:
data class FeedbackData(
var questionNumber: Int = 0,
var imageUri: Uri? = null,
@SerializedName("id") val id: Int,
@SerializedName("question") val question: String? = null,
@SerializedName("answer") var answer: Answer = Answer()
)
data class Answer(
@SerializedName("description") var description: String = "",
@SerializedName("image") var image: String = ""
)
, если вы видите, что я дал ответ, объект по умолчанию (инициализация по умолчанию), если сервер не отправляет его. Мое требование заключается в том, что если сервер отправляет его, я должен иметь его, если нет, то я должен быть в состоянии написать этот объект ответа. Но я получаю исключение нулевого указателя при попытке получить доступ к этому объекту ответа.
Вот журнал
E/xoxo: received list: [FeedbackData(questionNumber=0, imageUri=null, id=1, question=How was the event?, answer=null), FeedbackData(questionNumber=0, imageUri=null, id=2, question=Did you face any issue?, answer=null)
А вот ответ сервера:
{"id":1,"question":"How was the event?"},
{"id":2,"question":"Did you face any issue?"}