💻 آخرین فرصت یادگیری برنامه‌نویسی با آفر ویژه قبل از افزایش قیمت در ۵ آذر ماه (🎁 به همراه یک هدیه ارزشمند )
۰ ثانیه
۰ دقیقه
۰ ساعت
۲۷ محمد لطفی
گرفتن اطلاعات
جامعه جاوا (اندروید) ایجاد شده در ۱۳ آذر ۱۴۰۰

سلام

به این تیکه کد گیر میده و لیت دانشجو هارو برنمیگردونه و از پروژه میاد بیرون

ArrayListstudents=gson.fromJson(response,new TypeToken<ArrayList>(){}.getType());

پروژه استاد رو دانلود کردم و بازهم اجرا کردم ولی باز هم همین مشکل رو دارم

List<Student> students=gson.fromJson(response,new TypeToken<Student***>>(){}.getType());

محمد جان سلام وقت بخیر پروژه استاد که مشکلی نداره

مشکل شما بخاطر این هست که بجای Student از ArrayList استفاده کردید . (با ستاره مشخص کردم)

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

اقا پوریا ممنون میشم اگه میتونید با anydesk هم میتونید نگاه کنید حتی به نسخه gson 2.8.6 گیر میداد به نسخه 2.8.9 ارتقا دادم ولی بخدا از پروژه میاد بیرون.

هرچی هم میخوام عکس بفرستم یا فایل zip خطا میده که دسترسی برای اپلود فایل ندارم

محمد لطفی ۱۳ آذر ۱۴۰۰، ۱۶:۰۳

.....................

محمد لطفی ۱۳ آذر ۱۴۰۰، ۱۶:۰۴

اقا پوریا شرمنده امکان داره بخاطر سرعت اینترنت خوب ایران باشه چون الان retrofit رو هم انجام دادم ولی بازم مثل قبل میاد بیرون با دیباگ هم اروری که بهم میده

java.net.SocketTimeoutException: failed to connect to expertdevelopers.ir/185.94.99.234 (port 80) from /10.0.2.16 (port 54524) after 10000ms

اینه

محمد لطفی ۱۳ آذر ۱۴۰۰، ۱۹:۲۷

سلام مجدد محمد جان

بله همینطوره متاسفانه بخاطر سرعت اینترنت هست:( چون تایم اوت هم داده

پیشنهاد میکنم از اینترنت گوشی به جای وای فای استفاده کنید و از وی پی ان windscribe استفاده کنید .


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

متاسفانه اینکارو کردوم ولی بازم از پروژه میاد بیرون و الان خطای سرعت کمه اینترنت رو نمیده

محمد لطفی ۱۴ آذر ۱۴۰۰، ۱۴:۴۲

ارور مربوطه رو ارسال کنین

پوریا شفیعی ۱۴ آذر ۱۴۰۰، ۱۵:۰۸

پروژه استاد رو دانلود کردم دقیقا همون رو اجرا کردم respone رو میگیره ولی موقع callback میاد بیرون و هیچ اروری هم نشون نمیده

میتونید با anydesk نگاه کنید. 990951248 اینم کدش

محمد لطفی ۱۴ آذر ۱۴۰۰، ۱۵:۲۳


محمد لطفی ۱۴ آذر ۱۴۰۰، ۱۵:۲۵

دقیقا منم یه هفته اس با این خط کد مشکل دارم

List<Student> students=gson.fromJson(response,
        new  TypeToken<Student>>(){}.getType());

من قبلا این پروژه رو نوشتم . مجدد که به سرفصل معماری MVVMرسیدم و نیاز به این پروژه دارم از ابتدا شروع به نوشتن کردم .تو متد Getدر والی و رتروفیت تو اینجا مشکل داره

من اینترنت هم فیبر نوریه لطفا راهنمایی کنید

راضیه نجفی ۱۵ آذر ۱۴۰۰، ۰۵:۵۶

سلام وقت بخیر دوستان

متاسفانه 3 تا از دوستان این مشکل رو داشتند

این موضوع رو به استاد انتقال میدم احتمال زیاد مشکل از سمت سرور هست .

پوریا شفیعی ۱۶ آذر ۱۴۰۰، ۰۸:۵۱

فک نکنم از سمت سرور باشه چون من لیست student هارو میگیرم. فقط اپ کرش میکنه میاد بیرون.


محمد لطفی ۱۶ آذر ۱۴۰۰، ۰۹:۰۸

جدا؟ من فکر کردم دریافت نمیکنید ! چون در سوالتون هم گفتید لیست دانشجویان برگردانده نمیشه و ارور timeout ارسال کرده بودید

پس از اونجایی که 3 نفر چنین مشکلی رو داشتند احتمالا مشکل از ورژن لایبرری هست

لایبرری رو به این ورژن تغییر بدید

این نکته رو بگم ما در ادامه از لایبرری volley استفاده نخواهیم کرد و بجای اون از لایبرری retrofit استفاده خواهیم کرد چرا که با سایر لایبرری هایی که در ادامه یاد میگیرید سازگار هست و شرکت‌ها از retrofit استفاده میکنند.

همچنین چک کنید دسترستی اینترنت به اپلیکیشن در منیفست داده باشید

<uses-permission android:name="android.permission.INTERNET"/>

و همینطور مورد زیر رو به منیفست برنامه اضافه کرده باشید که به ssl گیر نده (چون api موجود ssl نیست و از اندروید 8 به بعد اگر ssl نباشه اتصال برقرار نمیشه)

android:usesCleartextTraffic="true"


implementation 'com.android.volley:volley:1.1.1'
implementation 'com.google.code.gson:gson:2.8.6'
پوریا شفیعی ۱۶ آذر ۱۴۰۰، ۱۹:۳۷

سلام نه متاسفانه با این روش‌ها حل نمیشه قبلا خودم امتحان کردم حتی نسخه gson باید 2.8.9 باشه و گرنه ارور میده

محمد لطفی ۱۹ آذر ۱۴۰۰، ۰۹:۲۷

حتی برای rtrofit هم همین مشکل رو داره

من تو یه شرکت کارموزی میکنم با پروژه‌های واقعی هم سرو کار دارم. الان برای یه ارتقا تو یه اپلیکشن از volly استفاده شده واقعا نمیدونم چرا ارور میده. حتی rtrofit رو با RXjava انجام دادم مشکلی نداره ولی اینجا نمیدونم چرا کرش میکنه

محمد لطفی ۱۹ آذر ۱۴۰۰، ۰۹:۳۰

سلام.

اصلا لینکی که درخواست ارسال میکنید رو داخل مرورگر بزنید ببینید سرور پاسخ میده و مرورگر باز میکنه یا نه؟

محسن موحد ۱۹ آذر ۱۴۰۰، ۱۰:۵۲

بله امتحان کردم وقتی با postman میزنم میاره حتی داخل اپلیکشن هم لیست رو بهم میده وبعد کرش میکنه از اپ میاد بیرون

محمد لطفی ۱۹ آذر ۱۴۰۰، ۱۱:۰۰

سلام مجدد محمد جان

همونطور که خودتون گفتید (حتی retroft رو با RXjava انجام دادم مشکلی نداره ولی اینجا نمیدونم چرا کرش میکنه) این شاید بخاطر ورژن لایبرری باشه برای همین پیشنهاد دادم در صورتی که واقعا نیاز دارید از Volley استفاده کنید از ورژن 2.8.6 جیسان استفاده کنید

متاسفانه لایبرری والی روند توسعه خوبی نداره و دیر به دیر خودش رو با سایر لایبرری‌ها سینک میکنه

درمورد اینکه هنگام sync با ارور مواجه میشید ارور مربوطه رو ارسال کنید و البته قبلش برای sync از یه vpn قوی مثل windscribe یا express vpn استفاده کنید .

درمورد این قسمت از پاسختون :

میاره حتی داخل اپلیکشن هم لیست رو بهم میده وبعد کرش میکنه از اپ میاد بیرون

ممنون میشم ارور رو ارسال کنید منظور اون قسمت از اندروید استودیو که براتون لاگ میندازه و نمایش میده تا متوجه بشم متنی که نوشته چی هست

یا میتونید اسکرین شات بگیرید فقط موردی که هست کل لاگ‌ها رو ارسال کنید حال به صورت عکس یا خود کد(ترجیحا اسکرین بگیرید)

پوریا شفیعی ۱۹ آذر ۱۴۰۰، ۱۶:۲۹
2021-12-10 20:38:46.885 6391-6391/com.sevenlearn.a7learnstudents W/a7learnstudent: Accessing hidden method Landroid/view/View;->computeFitSystemWindows(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z (greylist, reflection, allowed)
2021-12-10 20:38:46.886 6391-6391/com.sevenlearn.a7learnstudents W/a7learnstudent: Accessing hidden method Landroid/view/ViewGroup;->makeOptionalFitsSystemWindows()V (greylist, reflection, allowed)
2021-12-10 20:38:46.958 6391-6391/com.sevenlearn.a7learnstudents W/a7learnstudent: Accessing hidden method Landroid/graphics/FontFamily;->()V (greylist-max-q, reflection, allowed)
2021-12-10 20:38:46.958 6391-6391/com.sevenlearn.a7learnstudents W/a7learnstudent: Accessing hidden method Landroid/graphics/FontFamily;->addFontFromAssetManager(Landroid/content/res/AssetManager;Ljava/lang/String;IZIII[Landroid/graphics/fonts/FontVariationAxis;)Z (greylist-max-q, reflection, allowed)
2021-12-10 20:38:46.958 6391-6391/com.sevenlearn.a7learnstudents W/a7learnstudent: Accessing hidden method Landroid/graphics/FontFamily;->addFontFromBuffer(Ljava/nio/ByteBuffer;I[Landroid/graphics/fonts/FontVariationAxis;II)Z (greylist-max-q, reflection, allowed)
2021-12-10 20:38:46.959 6391-6391/com.sevenlearn.a7learnstudents W/a7learnstudent: Accessing hidden method Landroid/graphics/FontFamily;->freeze()Z (greylist-max-q, reflection, allowed)
2021-12-10 20:38:46.959 6391-6391/com.sevenlearn.a7learnstudents W/a7learnstudent: Accessing hidden method Landroid/graphics/FontFamily;->abortCreation()V (greylist-max-q, reflection, allowed)
2021-12-10 20:38:46.959 6391-6391/com.sevenlearn.a7learnstudents W/a7learnstudent: Accessing hidden method Landroid/graphics/Typeface;->createFromFamiliesWithDefault([Landroid/graphics/FontFamily;Ljava/lang/String;II)Landroid/graphics/Typeface; (greylist, reflection, allowed)
2021-12-10 20:39:03.040 6391-6416/com.sevenlearn.a7learnstudents D/HostConnection: HostConnection::get() New Host Connection established 0xf6f9fe30, tid 6416
2021-12-10 20:39:03.069 6391-6391/com.sevenlearn.a7learnstudents E/RecyclerView: No adapter attached; skipping layout
2021-12-10 20:39:03.072 6391-6416/com.sevenlearn.a7learnstudents D/HostConnection: HostComposition ext ANDROID_EMU_CHECKSUM_HELPER_v1 ANDROID_EMU_native_sync_v2 ANDROID_EMU_native_sync_v3 ANDROID_EMU_native_sync_v4 ANDROID_EMU_dma_v1 ANDROID_EMU_direct_mem ANDROID_EMU_host_composition_v1 ANDROID_EMU_host_composition_v2 ANDROID_EMU_vulkan ANDROID_EMU_deferred_vulkan_commands ANDROID_EMU_vulkan_null_optional_strings ANDROID_EMU_vulkan_create_resources_with_requirements ANDROID_EMU_YUV_Cache ANDROID_EMU_async_unmap_buffer ANDROID_EMU_vulkan_ignored_handles ANDROID_EMU_has_shared_slots_host_memory_allocator ANDROID_EMU_vulkan_free_memory_sync ANDROID_EMU_vulkan_shader_float16_int8 ANDROID_EMU_vulkan_async_queue_submit ANDROID_EMU_sync_buffer_data ANDROID_EMU_read_color_buffer_dma GL_OES_EGL_image_external_essl3 GL_OES_vertex_array_object GL_KHR_texture_compression_astc_ldr ANDROID_EMU_host_side_tracing ANDROID_EMU_async_frame_commands ANDROID_EMU_gles_max_version_3_0 
2021-12-10 20:39:03.073 6391-6416/com.sevenlearn.a7learnstudents W/OpenGLRenderer: Failed to choose config with EGL_SWAP_BEHAVIOR_PRESERVED, retrying without...
2021-12-10 20:39:03.074 6391-6416/com.sevenlearn.a7learnstudents D/EGL_emulation: eglCreateContext: 0xf6f9ff80: maj 3 min 0 rcv 3
2021-12-10 20:39:03.075 6391-6416/com.sevenlearn.a7learnstudents D/EGL_emulation: eglMakeCurrent: 0xf6f9ff80: ver 3 0 (tinfo 0xc7cf4290) (first time)
2021-12-10 20:39:03.080 6391-6416/com.sevenlearn.a7learnstudents I/Gralloc4: mapper 4.x is not supported
2021-12-10 20:39:03.081 6391-6416/com.sevenlearn.a7learnstudents D/HostConnection: createUnique: call
2021-12-10 20:39:03.081 6391-6416/com.sevenlearn.a7learnstudents D/HostConnection: HostConnection::get() New Host Connection established 0xf6f9ef50, tid 6416
2021-12-10 20:39:03.081 6391-6416/com.sevenlearn.a7learnstudents D/goldfish-address-space: allocate: Ask for block of size 0x100
2021-12-10 20:39:03.081 6391-6416/com.sevenlearn.a7learnstudents D/goldfish-address-space: allocate: ioctl allocate returned offset 0x3f3ffe000 size 0x2000
2021-12-10 20:39:03.101 6391-6416/com.sevenlearn.a7learnstudents D/HostConnection: HostComposition ext ANDROID_EMU_CHECKSUM_HELPER_v1 ANDROID_EMU_native_sync_v2 ANDROID_EMU_native_sync_v3 ANDROID_EMU_native_sync_v4 ANDROID_EMU_dma_v1 ANDROID_EMU_direct_mem ANDROID_EMU_host_composition_v1 ANDROID_EMU_host_composition_v2 ANDROID_EMU_vulkan ANDROID_EMU_deferred_vulkan_commands ANDROID_EMU_vulkan_null_optional_strings ANDROID_EMU_vulkan_create_resources_with_requirements ANDROID_EMU_YUV_Cache ANDROID_EMU_async_unmap_buffer ANDROID_EMU_vulkan_ignored_handles ANDROID_EMU_has_shared_slots_host_memory_allocator ANDROID_EMU_vulkan_free_memory_sync ANDROID_EMU_vulkan_shader_float16_int8 ANDROID_EMU_vulkan_async_queue_submit ANDROID_EMU_sync_buffer_data ANDROID_EMU_read_color_buffer_dma GL_OES_EGL_image_external_essl3 GL_OES_vertex_array_object GL_KHR_texture_compression_astc_ldr ANDROID_EMU_host_side_tracing ANDROID_EMU_async_frame_commands ANDROID_EMU_gles_max_version_3_0 
2021-12-10 20:39:31.565 6391-6420/com.sevenlearn.a7learnstudents D/Volley: [465] NetworkUtility.logSlowRequests: HTTP response for request=<[ ] http://expertdevelopers.ir/api/v1/experts/student 0x9365d964 NORMAL 1> [lifetime=29013], [size=490375], [rc=200], [retryCount=1]
2021-12-10 20:39:31.651 6391-6391/com.sevenlearn.a7learnstudents I/ApiService: onResponse:
محمد لطفی ۱۹ آذر ۱۴۰۰، ۱۸:۲۵


محمد لطفی ۱۹ آذر ۱۴۰۰، ۱۸:۲۶
2021-12-10 21:55:06.832 6803-6803/com.sevenlearn.a7learnstudents E/AndroidRuntime: FATAL EXCEPTION: main
  Process: com.sevenlearn.a7learnstudents, PID: 6803
  com.google.gson.JsonSyntaxException: java.lang.NumberFormatException: Expected an int but was 3333333334 at line 1 column 422701 path $[2749].score
    at com.google.gson.internal.bind.TypeAdapters$7.read(TypeAdapters.java:229)
    at com.google.gson.internal.bind.TypeAdapters$7.read(TypeAdapters.java:219)
    at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:131)
    at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:222)
    at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41)
    at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:82)
    at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:61)
    at com.google.gson.Gson.fromJson(Gson.java:963)
    at com.google.gson.Gson.fromJson(Gson.java:928)
    at com.google.gson.Gson.fromJson(Gson.java:877)
    at com.sevenlearn.a7learnstudents.ApiService$3.onResponse(ApiService.java:84)
    at com.sevenlearn.a7learnstudents.ApiService$3.onResponse(ApiService.java:79)
    at com.android.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:82)
    at com.android.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:29)
    at com.android.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:102)
    at android.os.Handler.handleCallback(Handler.java:938)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:223)
    at android.app.ActivityThread.main(ActivityThread.java:7656)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
   Caused by: java.lang.NumberFormatException: Expected an int but was 3333333334 at line 1 column 422701 path $[2749].score
    at com.google.gson.stream.JsonReader.nextInt(JsonReader.java:1171)
    at com.google.gson.internal.bind.TypeAdapters$7.read(TypeAdapters.java:227)
    at com.google.gson.internal.bind.TypeAdapters$7.read(TypeAdapters.java:219) 
    at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:131) 
    at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:222) 
    at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41) 
    at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:82) 
    at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:61) 
    at com.google.gson.Gson.fromJson(Gson.java:963) 
    at com.google.gson.Gson.fromJson(Gson.java:928) 
    at com.google.gson.Gson.fromJson(Gson.java:877) 
    at com.sevenlearn.a7learnstudents.ApiService$3.onResponse(ApiService.java:84) 
    at com.sevenlearn.a7learnstudents.ApiService$3.onResponse(ApiService.java:79) 
    at com.android.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:82) 
    at com.android.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:29) 
    at com.android.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:102) 
    at android.os.Handler.handleCallback(Handler.java:938) 
    at android.os.Handler.dispatchMessage(Handler.java:99) 
    at android.os.Looper.loop(Looper.java:223) 
    at android.app.ActivityThread.main(ActivityThread.java:7656) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) 
2021-12-10 21:55:06.911 6803-6803/com.sevenlearn.a7learnstudents I/Process: Sending signal. PID: 6803 SIG: 9


محمد لطفی ۱۹ آذر ۱۴۰۰، ۱۸:۲۶


محمد لطفی ۱۹ آذر ۱۴۰۰، ۱۸:۲۷
2021-12-10 21:58:43.723 6937-6937/com.sevenlearn.a7learnstudents E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.sevenlearn.a7learnstudents, PID: 6937
    com.google.gson.JsonSyntaxException: java.lang.NumberFormatException: Expected an int but was 3333333334 at line 1 column 422701 path $[2749].score
        at com.google.gson.internal.bind.TypeAdapters$7.read(TypeAdapters.java:229)
        at com.google.gson.internal.bind.TypeAdapters$7.read(TypeAdapters.java:219)
        at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:131)
        at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:222)
        at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41)
        at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:82)
        at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:61)
        at com.google.gson.Gson.fromJson(Gson.java:963)
        at com.google.gson.Gson.fromJson(Gson.java:928)
        at com.google.gson.Gson.fromJson(Gson.java:877)
        at com.sevenlearn.a7learnstudents.ApiService$3.onResponse(ApiService.java:84)
        at com.sevenlearn.a7learnstudents.ApiService$3.onResponse(ApiService.java:79)
        at com.android.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:82)
        at com.android.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:29)
        at com.android.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:102)
        at android.os.Handler.handleCallback(Handler.java:938)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:223)
        at android.app.ActivityThread.main(ActivityThread.java:7656)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
     Caused by: java.lang.NumberFormatException: Expected an int but was 3333333334 at line 1 column 422701 path $[2749].score
        at com.google.gson.stream.JsonReader.nextInt(JsonReader.java:1171)
        at com.google.gson.internal.bind.TypeAdapters$7.read(TypeAdapters.java:227)
        at com.google.gson.internal.bind.TypeAdapters$7.read(TypeAdapters.java:219) 
        at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:131) 
        at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:222) 
        at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41) 
        at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:82) 
        at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:61) 
        at com.google.gson.Gson.fromJson(Gson.java:963) 
        at com.google.gson.Gson.fromJson(Gson.java:928) 
        at com.google.gson.Gson.fromJson(Gson.java:877) 
        at com.sevenlearn.a7learnstudents.ApiService$3.onResponse(ApiService.java:84) 
        at com.sevenlearn.a7learnstudents.ApiService$3.onResponse(ApiService.java:79) 
        at com.android.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:82) 
        at com.android.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:29) 
        at com.android.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:102) 
        at android.os.Handler.handleCallback(Handler.java:938) 
        at android.os.Handler.dispatchMessage(Handler.java:99) 
        at android.os.Looper.loop(Looper.java:223) 
        at android.app.ActivityThread.main(ActivityThread.java:7656) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) 
2021-12-10 21:58:43.805 6937-6937/com.sevenlearn.a7learnstudents I/Process: Sending signal. PID: 6937 SIG: 9
محمد لطفی ۱۹ آذر ۱۴۰۰، ۱۸:۲۹

به تنها کدی که گیر میده

List<Student> students=gson.fromJson(response,new TypeToken<Student>>(){}.getType());

این خط کد هستش و اصلا واقعا نمیدونم کدی نیست که بگم خودم نوشتم دانلود کردم و فقط به تنها چیزی که گیر داده یه نسخه jsonهستش که بایستی نسخه 2.8.9 رو وارد کنی. تعداد ایتم‌های لیست نزدیک 4000 تاست

محمد لطفی ۱۹ آذر ۱۴۰۰، ۱۸:۳۲

طبق ارور هایی که ارسال کردید احتمال زیاد میتونه بخاطر مدل Student هم باشه که این خطا تولید شده

راه حلیکه میتونم بدم فایل Student.java رو بررسی کنید که خطایی نداشته باشید اگر مشکلی وجود نداشت به سراغ Adapter برید و ببینید موقعی که میخاید score رو setText کنید به استرینگ تبدیل میکنید یا خیر .

هر چند باز از اونجایی که گفتید پروژه پیوست شده هم دانلود کردید و چنین مشکلی رو داشت من شک م روی ورژن هاست چون اون پروژه پیوست شده رو تست کردم و مشکلی نداشت هر چند احتمال داره بخاطر همنامی پروژه به اشتباه پروژه پیوست شده رو روی اندروید استودیوتون import کردید .

بهر حال توی سوشال مدیا باهام در ارتباط باشید و سورس کد رو بفرستید تا بررسی کنم @PouriaShafiee

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

سلام دوستانی که در اینده به چنین مشکلی برخورد کردن بایستی کد Student.java رو به کد‌های زیر تغییر بدن

package com.sevenlearn.a7learnstudents;
import android.os.Parcel;
import android.os.Parcelable;
import com.google.gson.annotations.SerializedName;
public class Student implements Parcelable {
    private long id;
    @SerializedName("first_name")
    private String firstName;
    @SerializedName("last_name")
    private String lastName;
    private String course;
    private float score;
    public long getId() {
        return id;
    }
    public void setId(long id) {
        this.id = id;
    }
    public String getFirstName() {
        return firstName;
    }
    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }
    public String getLastName() {
        return lastName;
    }
    public void setLastName(String lastName) {
        this.lastName = lastName;
    }
    public String getCourse() {
        return course;
    }
    public void setCourse(String course) {
        this.course = course;
    }
    public float getScore() {
        return score;
    }
    public void setScore(float score) {
        this.score = score;
    }
    @Override
    public int describeContents() {
        return 0;
    }
    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeLong(this.id);
        dest.writeString(this.firstName);
        dest.writeString(this.lastName);
        dest.writeString(this.course);
        dest.writeFloat(this.score);
    }
    public Student() {
    }
    protected Student(Parcel in) {
        this.id = in.readLong();
        this.firstName = in.readString();
        this.lastName = in.readString();
        this.course = in.readString();
        this.score = in.readFloat();
    }
    public static final Parcelable.Creator CREATOR = new Parcelable.Creator() {
        @Override
        public Student createFromParcel(Parcel source) {
            return new Student(source);
        }
        @Override
        public Student[] newArray(int size) {
            return new Student[size];
        }
    };
}
بهترین پاسخ
پوریا شفیعی ۲۱ آذر ۱۴۰۰، ۱۸:۲۷

خیلی ممنون مرسی

محمد لطفی ۲۱ آذر ۱۴۰۰، ۱۸:۵۲