پرش به محتوای اصلی
مسیر تخصصی جاوا و Spring
درخواست پروژهتدریس خصوصیارتباط با ماراهنما
جاواپرو v1.2.34یاد بگیر، تمرین کن، حرفه‌ای بساز
خانهدوره‌هاآموزش رایگانوبلاگمدرس‌هاخدمات
خانهجلسه چهارم: کار با کتابخانه Android networking
آموزش برنامه نویسی »

جلسه چهارم: کار با کتابخانه Android networking

دوره رایگان اموزش ساخت اینستاگرام با اندروید

۴ دقیقه مطالعهآموزش برنامه نویسی »آموزش جاوا و انجام پروژه های برنامه نویسی
جلسه چهارم: کار با کتابخانه Android networking
محتوای منتخب جاواپرو

خلاصه مطلب

دوره رایگان اموزش ساخت اینستاگرام با اندروید
نوع محتوامقاله آموزشی
موضوعآموزش برنامه نویسی »
زمان مطالعه۴ دقیقه مطالعه
آخرین ویرایش۱۵ بهمن ۱۳۹۸
اموزش پروژه محور ساخت اینستاگرام با اندروید
اموزش پروژه محور ساخت اینستاگرام با اندروید

به نام خدا

در برنامه نویسی اپلیکیشن برای ارتباط با سرور کتابخونه های متعددی وجود دارد ولی برنامه نویس ها طبیعتا اون کتابخانه ای را انتخاب می کنند که از نظر کدنویسی کاربردی تر و بهینه تر باشد.

کتابخونه Android networking هم یه کتابخونه کاربردی و در عین حال بهینه از لحاظ کد نویسیه که در ادامه نمونه ای از کاربردهای آن همراه با مثال آموزش میدیم.

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

ما یه درخواست میدیم به سرور و سرور به ما یه پاسخ میده

اما نوع درخواست های ما با هم متفاوته.

خب درخواست ها دو نوع هست post و get

خب حالا get چیه؟

در متد get ما اطلاعات رو بصورت (key,value) (کلید،مقدار) میفرستیم به سرور

و احتمالا توی سرچ های روزانه تون هم دیده باشید که توی همون url (ادرس سایتی) که سرچ میکنیم یه علامت سوال دیده میشه(؟).توی متد get بعد از این علامت ما میتونیم ساختار(کلید،مقدار) رو که ارسال کردیم ببینیم.

به عنوان مثال به این شکل خواهد بود:

?username =ali

• که اینجا username کلید هست و ali مقداره

و به صورت زیر بهش دسترسی خواهیم داشت:

https://javapro.ir/user.php?username=ali

نمونه کد(1)

• متد get برای ارسال اطلاعات محرمانه مناسب نخواهد بود چون توی ادرس بار مرورگر مثل نمونه کد(1) اطلاعات دیده میشن.

اما بریم سراغ متد post

توی این نوع درخواست اطلاعات به صورت پکیج از سمت کلاینت که ما باشیم ارسال میشه به سرور و مثل get ما اطلاعات رو نمیبینیم پس بدیهی است که برای اطلاعات محرمانه گزینه بهتری باشه.

پاسخ ها از سمت سرور هم به صورت json به ما ارسال میشه که در ادامه جلسات توضیح میدیم خدمتتون json چیه.

خب بریم سراغ نمونه کد های استفاده از android networking

AndroidNetworking.get("https://javapro.ir/getAllUsers/{pageNumber}") .addPathParameter("pageNumber", "0") .addQueryParameter("limit", "6") .addHeaders("token", "0000") .setTag("get") .setPriority(Priority.HIGH) .build() .getAsJSONArray(new JSONArrayRequestListener() { @Override public void onResponse(JSONArray response) { } @Override public void onError(ANError error) { } });

نمونه کد(2)

توضیحات:

public void onResponse(JSONArray response) { }

• اینجا سرور به درخواستی که دادیم پاسخ میده

public void onError(ANError error) { }

• اینجا اگه اروری از سرور بیاد رو هندل میکنیم

خب همونطور که در نمونه کد(2) میبینید ما یه درخواست از نوع get دادیم به سرور،یک سری پارامتر رو هم همراه با درخواستمون ارسال کردیم و گفتیم پاسخی که از سرور میاد به صورت ارایه json باشه.

یکی از مزیت های android networking اینه که پاسخ میتونه به صورت دلخواه باشه.

دلخواه باشه یعنی چی؟

یعنی مثلا توی همین اینستاگرام کاربر ما چندتا ویژگی مثل اسم،ایمیل و ... داره

با استفاده از کتابخانه android networking ما میتونیم درخواست ها مبتنی بر همین ویژگی های کاربر باشه فعلا در همین حد باشه وقتی کد نویسی برنامه هم شروع شد نمونه هاشو میبینیم.

خب بریم یه نمونه کد دیگه این بار از نوع post ببینیم:

AndroidNetworking.post("https://javapro.ir/signup") .addBodyParameter("firstname", "ali") .addBodyParameter("lastname", "alavi") .setTag("test") .setPriority(Priority.MEDIUM) .build() .getAsJSONObject(new JSONObjectRequestListener() { @Override public void onResponse(JSONObject response) { } @Override public void onError(ANError error) { } });

نمونه کد(3)

• درخواست بالا همانطور که میبینید از نوع post هست و ما باهاش اسم کاربر رو هم ارسال کردیم. • علاوه برا اسم ما میتونیم یک شی جاوا ،یا فایل و یا هر چیز دیگه ای رو هم با درخواستمون بفرستیم.

به این صورت که به جای اسم کاربر اینگونه عمل می کنیم :

addBodyParameter(file)

• این فایل از هر نوعی میتونه باشه

از android networking میتونیم برای دانلود فایل از سرور و همچنین اپلود فایل توی سرور هم استفاده کنیم که نمونه کد هاش مشابه زیر هست:

نمونه کد دانلود از سرور:

AndroidNetworking.download(url,dirPath,fileName) .setTag("download") .setPriority(Priority.MEDIUM) .build() .setDownloadProgressListener(new DownloadProgressListener() { @Override public void onProgress(long bytesDownloaded, long totalBytes) { } }) .startDownload(new DownloadListener() { @Override public void onDownloadComplete() { } @Override public void onError(ANError error) { } });

نمونه کد(4)

توضیحات

public void onProgress(long bytesDownloaded, long totalBytes) { }

• اینجا وقتی دانلود داره انجام میشه رو میتونیم مدیریت کنیم.

public void onDownloadComplete() { }

• اینجا وقتی دانلود تموم میشه

public void onError(ANError error) { }

• اینجا اگر به ارور بخوریم رو هندل میکنیم

نمونه کد آپلود توی سرور:

AndroidNetworking.upload(url) .addMultipartFile("image",file) .addMultipartParameter("key","value") .setTag("uploadTest") .setPriority(Priority.HIGH) .build() .setUploadProgressListener(new UploadProgressListener() { @Override public void onProgress(long bytesUploaded, long totalBytes) { } }) .getAsJSONObject(new JSONObjectRequestListener() { @Override public void onResponse(JSONObject response) { } @Override public void onError(ANError error) { } });

نمونه کد(5)

توضیحات

public void onProgress(long bytesUploaded, long totalBytes) { }

• مدیریت در حین اپلود شدن

public void onResponse(JSONObject response) { }

• مدیریت پاسخ دریافتی از سرور

public void onError(ANError error) { }

• هندل کردن ارور

این تمام چیزی بود که شما باید از android networking میدانستید این جلسه هم تموم شد. با ما همراه باشید...

پیروز و موفق باشید

این جلسه آموزشی را می توانید بصورت کتاب الکترونیکی (PDF شده) در لینک زیر دریافت کنید. این جلسه آموزشی را بصورت کامل و مرتب شده در لینک زیر دانلود کنید:(در صورت خرابی لینک گزارش دهید)

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

لینک دانلود کتاب

نشر این مطلب با ذکر منبع (لینک سایت) بلامانع است. برای با خبر شدن از جدیدترین مطالب آموزشی جاوا عضو کانال تلگرام ما شوید.

برچسب‌هاآموزش برنامه نویسی »آموزش ساخت برنامه ای شبیه به اینستاگرام »آموزش برنامه نویسی اندروید »آموزش اندرویدآموزش اندروید پروژه محورپکیج آموزش اندروید استودیوآموزش اندروید استودیوکلاس آموزش اندرویدآموزش اندروید استودیو pdfآموزش اندروید پیشرفتهآموزش اندروید مقدماتیپکیج رایگان آموزش برنامه نویسی اندرویدآموزش حرفه ای اندرویدسفارش پروژه اندرویدپروژه اندروید
ادامه مسیر

پیشنهاد جاواپرو

موضوع را با آموزش‌های مرتبط ادامه دهید و نکته‌های کاربردی را در مسیر خود نگه دارید

مشاهده دوره‌ها
مطالب پیشنهادی

ادامه مطالعه

xدسته‌بندی نشده
۱۱ دی ۱۳۹۸ مطالعه کوتاه

x

پادکست شماره 3 – راه های کسب درآمد از برنامه نویسی

مطالعه مطلب
پادکست شماره 3 - راه های کسب درآمد از برنامه نویسیپادکست
۲۹ اردیبهشت ۱۴۰۴ پادکست آموزشی

پادکست شماره 3 - راه های کسب درآمد از برنامه نویسی

در این پادکست برنامه نویسی به شیوه ها و راه های کسب درآمد از برنامه نویسی پرداخته ایم. یک کاغذ و قلم بردارید و به پادکست گوش بدید.

شنیدن پادکست
پادکست شماره 2 - چگونه وارد فضای برنامه نویسی شویم؟پادکست
۲۹ اردیبهشت ۱۴۰۴ پادکست آموزشی

پادکست شماره 2 - چگونه وارد فضای برنامه نویسی شویم؟

در این پادکست برنامه نویسی یاد میگیریم که چگونه وارد فضای برنامه نویسی شویم و تخصص برنامه نویسی را به دست آوریم.

شنیدن پادکست
جاواپرومرجع تخصصی یادگیری و توسعهٔ جاوا

تجربه‌ای منظم، ساده و حرفه‌ای برای یادگیری عمیق جاوا، Spring و مهندسی نرم‌افزار؛ قابل استفاده در موبایل، تبلت و دسکتاپ

یادگیری

همه دوره‌هاآموزش رایگانمسیر یادگیریمدرس‌ها

جاواپرو

درباره ماخدمات تخصصیدرخواست پروژهتدریس خصوصیبلاگ فنیرپورتاژ آگهی

پشتیبانی

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

مجوزها

نماد اعتمادنماد اعتماد
خرید امنپرداخت فقط در درگاه رسمیپشتیبانی آموزشیمسیر ارتباط شفاف و پیگیری‌پذیردسترسی پایداروب‌اپ واکنش‌گرا روی همه دستگاه‌ها
© ۱۴۰۵ جاواپرو؛ همه حقوق محفوظ استتوسعه توسط پایاپینگ
خانهدوره‌هاسبد