تابستون داره تموم میشه ها، فرصت‌ها محدودن کلی آفر جذاب در کمپین تابستون🔥👇
۰ ثانیه
۰ دقیقه
۰ ساعت
۴ سجاد افتخاری
دریافت نکردن لیست دانشجویان
پوریا شفیعی حل شده توسط پوریا شفیعی

سلام وقت بخیر..من وقتی GsonRequest رو اعمال کردم دیگه نتونستم لیست دانشجوها رو دریافت کنم و ارور میده.
چیکار باید بکنم ؟

سلام سجاد،  به substring گیر داده طبق تصویر قبل از اینکه حرف اول رو بگیری  یه log بزار و debug کن   ببین داده داری یا نه اگر نداشتی همین منطق رو قدم به قدم عقبگرد برو تا به خطا برسی اگر هم نتونستی برطرف کنی کدت رو بفرست تا دوستان راهنمایی کنند

مهرداد ۲۴ آذر ۱۳۹۹، ۱۰:۱۸

سلام و احترام

 

مشکل شما از متد.subString مربوط به کلاس String هست که باعث خطای nullPointer میشود .

یا اینکه داده ای دریافت نمیکنید.

حل مشکل: 

۱-متد bind مربوط به Adapter بازبینی کنید .

۲-مدل خود را بررسی کنید .

درصورتی که علت رو پیدا نکردید کد مربوط به Adapter و Model رو ارسال بفرمایید تا بررسی کنم.

پوریا شفیعی ۲۴ آذر ۱۳۹۹، ۱۰:۲۴

این کد Adapter منه

سجاد افتخاری ۲۴ آذر ۱۳۹۹، ۱۴:۴۰

سلام مجدد من کدتون رو بررسی کردم همونطور که خدمتتون عرض کردم مشکل از Model شما بود کدتون رو به صورت زیر تغییر بدید:

	private int id;
    @SerializedName("first_name")
    private String firstName;
    @SerializedName("last_name")
    private String lastName;
    private String course;
    private int score;

به این طریق دیتا مد نظرتون دریافت میشه و به ارور nullPointer نمیخورید

{
"id": 339,
"first_name": "Fardin",
"last_name": "Aghadadashi",
"course": "Android",
"score": 173,
"created_at": "2020-03-05 14:44:53",
"updated_at": "2020-03-05 14:44:53"
}

اگر دقت کنید خواهید دید نام فیلد ما در api مربوطه به عنوان مثال first_name بود و نه firstName به همین دلیل چون نام متغیرمان firstName انتخاب کردیم باید از عمل SerializedName استفاده کنیم .

اگر از first_name استفاده میکردیم نیاز به چنین کاری نبود

موفق باشید

 

 

 

 

بهترین پاسخ
پوریا شفیعی ۲۴ آذر ۱۳۹۹، ۱۵:۴۴