دوره های آموزشی
خانه / اندروید / آموزش اندروید کتابخانه Volley – استخراج داده ها از URL

آموزش اندروید کتابخانه Volley – استخراج داده ها از URL

در این پست از آموزش اندروید به معرفی کتابخانه Volley   می پردازیم ، برای درک بهتر مطلب سعی شده طی مثالی ساده نحوه استفاده از این کتابخانه اندروید آموزش داده شود. برای پیاده سازی این پروژه نیاز به داده هایی از نوع JSON  می باشد تا از طریق یک لینک وب قابل خواندن باشد و برای خواندن این داده ها ما از کتابخانه volley استفاده خواهیم کرد:

آمورش volley در اندروید

Android Volley چیست؟

Volley کتابخانه ای در اندروید است که اپلیکیشن ها از آن برای برقراری ارتباط در شبکه استفاده می کنند . از مزایای این کتابخانه سرعت و سهولت در مرتبط کردن اپلیکیشن در یک شبکه داخلی یا اینترنت است.

دلایل استفاده از Android Volley؟

Volley  فرآیند مرتبط کردن اپلیکیشن در شبکه را آسان می کند :

  • مدیریت درخواست ها به راحتی قابل انجام است
  • مدیریت شبکه به صورت کارآمد و بهینه
  • قابلیت سفارشی سازی با توجه به نیاز های اپلیکیشن

آموزش اندروید کتابخانه Volley

برای استفاده از کتابخانه Volley در اندروید ما نیاز به یک مسیر وب که شامل داده های JSON باشد داریم . مسیر زیر یک خروجی JSON را در اختیار شما قرار می دهد:

 

 

از URL بالا می توانید در پروژه خود استفاده کنید . در این ساختار JSON ،  اطلاعات خودرو ها شامل نام خودرو و مسیر قرار گیری تصویر را قرار داده ایم که از آن برای نمایش در اپلیکیشن اندروید استفاده می شود. هدف ما در این مثال خواندن اطلاعات بالا در اپلیکیشن و نمایش انها در List View است.

 

ایجاد پروژه جدید در اندروید استدیو

  • در ایتدا یک پروژه اندروید با نام CarApp ایجاد می کنیم ، نام پروژه اهمیتی ندارد اما حتما یک اکتیوتی از نوع Empty Activity به پروژه اضافه کنید.
  • بعد از اینکه پروژه ایجاد شد به فایل AndroidManifest رفته و مجوز دسترسی به شبکه را در این فایل اعلام کنید.

مجوز دسترسی به اینترنت

فایل  AndroidManifest.xml باز کرده و مجوز دسترسی به اینترنت را مطابق کد زیر در آن وارد کنید.

افوزدن کتابخانه Volley

در این قسمت نحوه اضافه کردن کتابخانه Volley به یک پروژه اندروید را شرح می دهیم

  • ابتدا فایل build.gradle را در app level باز کنید .
  • حال در این فایل کد زیر را که کتابخانه را به پروژه معرفی می کند اضافه کنید:

ایجاد کلاس Data Model :

برای ذخیره اطلاعات خوانده شده در یک شئی ما نیاز به ایجاد یک کلاس ساده داریم به همین جهت کلاس جاوا با نام Car ایجاد کرده و کدهای زیر را در آن تایپ کنید :

  • هدف از ایجاد کلاس بالا خواندن اطلاعات از ساختار JSon و ریختن آنها در اشیائی از این کلاس است .
  • در این کلاس یک سازنده برای مقدار دهی اولیه اطلاعات و متدهای getters برای خواندن این مقادیر است.

ایجاد ListView

  • هماگونه که قبلا عنوان شد داده های خوانده شده از JSon را در ListView نمایش خواهیم داد و در این قسمت قصد داریم یک ListView سفارشی ایجاد کنیم
  • ابتدا فایل activity_main.xml را باز کرده و یک ListView و یک Progress Bar را به آن اضافه کنید ، Progress Bar برای نمایش لود شدن اطلاعات هنگام خواندن اطلاعات از JSon کاربرد دارد

در قسمت بعد نحوه ایجاد یک لایوت برای آیتم های List View را نمایش خواهیم داد:

ایجاد لایوت سفارشی برای آیتم های List View

در داخل پوشه لایوت (res->layout) یک فایل لایوت با نام list_items.xml ایجاد کنید .

 

همانطور که می بینید 2 تا Text Views برای نمایش اطلاعات استخراج شده از داده های JSon در این لایوت اضافه شده اند.

 

ایجاد Adapter سفارشی

  • زمانیکه که نیاز به ایجاد List View  سفارشی دارید باید یک Array Adapter سفارشی شده برای آن ایجاد کنید .
  • برای این منظور یک کلاس جدید با نام ListViewAdapter.java ایجاد کرده و کدهای زیر را در آن وارد کنید :
 

و در آخرین قسمت این آموزش داده های JSon را استخراج کرده و آنها را در Listview نمایش می دهیم

 

استخراج و خواندن Json با استفاده از Volley

 

حال به سراغ فایل  MainActivity.java رفته و کدهای زیر را د رآن کپی کنید :

در انتهای App را اجرا ء کرده و نتیجه نهایی را بررسی کنید.

دانلود پروژه

 

 

درباره ی محمد آذرنیوا

من محمد آذرنیوا، نویسنده و مدرس دوره های برنامه نویسی ، طراحی وب و تحلیل گر پایگاه داده هستم و قصد دارم در این وبسایت مطالب کاربردی در این زمینه را با شما به اشتراک بگذارم. بیشتر از یک برنامه نویس باشید...

همچنین ببینید

فیلم آموزش برنامه نویسی

فیلم آموزشی ساخت اپلیکیشن اندروید (اپلیکیشن چت)

با مشاهده فیلم آموزشی ساخت اپلیکیشن اندروید شما هر آنچه که نیاز برای ساخت اپلیکیشن ...

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *