آموزش api نویسی
( فیلم آموزشی ) ،توسط مهندس میرمحمدی
به کلیک سایت خوش اومدی ،
اینجا میتونی هر فیلم آموزشی که مد نظر داری رو پیدا کنی.
آموزش های کلیک سایت کاملا از صفر تا صد طراحی شده و تمامی آموزش ها به زبان فارسی و مناسب جهت ورود به بازار کار تولید شده.
پس از دیدن آموزش ها ، بدون تردید شما آماده ورود به بازار کار و کسب درآمد خواهید شد.
برای شروع ، ابتدا فیلم معرفی دوره رو مشاهده نمایید.
سپس میتوانید در ادامه همین صفحه ، سایر قسمت های این مجموعه را دانلود نمایید.
برای مشاهده فیلم با سرعت بالا ، از آی پی ایران استفاده نمایید.
![](/img/panel-demo.jpg)
![](/img/chera_clicksite.png)
معرفی سرفصل های این دوره:
فصل اول: آشنایی با مبانی برنامه نویسی اندروید
-
آشنایی با معماری برنامه های اندرویدی
-
ساخت شبیه ساز جهت تست پروژه اندروید
-
آشنایی با دستور Toast و حلقه for در برنامه های اندرویدی
-
تغییر مقدار ، رنگ و اندازه یک TextView از طریق برنامه و اعمال رویداد کلیک روی TextView که با لمس آن در برنامه یک message در صفحه ایجاد می گردد
-
نحوه حرکت روی اکتیوتی ها
-
نحوه close کردن یک اکتیوتی و طریقه انتقال اطلاعات از یک اکتیوتی به اکتیویتی دیگر را خواهیم آموخت
-
طریقه ایجاد یک منو در برنامه های اندرویدی
-
آشنایی با context در برنامه نویسی اندروید ، معرفی انواع کانتکس و ایجاد یک کلاس از نوع application
-
آشنایی با DatepickerDialog، TimePickerDialog،progressDialog ، AlertDialog
-
طریقه ارسال پیامک با برنامه های اندرویدی از طریق خود برنامه
-
آشنایی باSMS_RECEIVED در برنامه های اندرویدی که پس از ارسال پیامک به گوشی های اندرویدی یک رویداد قابلیت اجرا پیدا می کند
-
آشنایی با LinearLayout و کار روی UI پروژه
-
آشنایی با RelativeLayout و کار روی UI پروژه
-
طریقه ساخت و استفاده از دیتابیس SQLite در پروژه های اندرویدی
-
دریافت دیتاهای ثبت شده در دیتابیس در اکتیوتی های دیگر و مثلاً نمایش در یک ادیت باکس
-
پیاده سازی یک مینی پروژه با دیتابیس SQLite با قابلیت ورود اطلاعات ، نمایش اطلاعات در یک List View ، جستجوی داده ها ، حذف داده ها و انتخاب داده ها
-
ایجاد کلاسی به نام DBAdapter در مینی پروژه که در این کلاس کلیه تنظیمات مربوط به دیتابیس را پیاده سازی خواهیم کرد
-
ایجاد کلاسی به نام Mokhatab در مینی پروژه که پردازش داده های دیتابیس از طریق این کلاس انجام خواهد گرفت
-
ادامه تکمیل کلاس DBAdapter در مینی پروژه و ایجاد متودهای نمایش کلیه داده های جداول دیتابیس ، سلکت یک دیتای خاص ، اضافه کردن یک داده به جداول دیتابیس ، حذف داده ها ، بروز آوری داده ها و جستجوی داده ها
-
ایجاد فرم ورود اطلاعات به دیتابیسSQLite در مینی پروژه کار با دیتابیس با قابلیت جلوگیری از خالی ماندن EditText ها هنگام ورود اطلاعات
-
نمایش دیتای ذخیره شده در دیتابیس در یک لیست ویو در مینی پروژه کار با دیتابیس SQLite
-
امکان سرچ دیتاهای ذخیره شده در دیتابیس از طریق یک EditText و امکان حذف فیلتر انجام شده از طریق لمس دکمه همه و امکان سلکت کردن اطلاعالت یک سطر لیست ویو با لمس سطر مورد نظر و انتقال اطلاعات آن به یک اکتیوتی دیگر
-
حذف دیتای سلکت شده در لیست ویوی مینی پروژه از طریق یک AlertDialog
-
آشنایی با Multi Thread جهت اجرای بهتر پروژه های اندروید
-
ایجاد یک فرم لاگین و پسورد و راستی آزمایی اطلاعات ثبت شده در دیتابیس SQLite
-
نحوه کار با camera گوشی به این شکل که در برنامه امکان ارتباط با camera گوشی فراهم می گردد و تصویر برداشت شده در یک image view در پروژه ما نمایش داده میشود
-
تبدیل دیتای json به یک استرینگ معمولی و جداسازی عناصر آن و قرار دادن هر عنصر در یک EditText
-
طریقه کار با یک RadioButton و CheckBox و دریافت مقادیر آنها و قرار دادن در یک Toast
-
ایجاد یک DatePickerDialog شمسی با قابلیت انتخاب تاریخ و انتقال تاریخ انتخاب شده در یک EditText
-
آشنایی با آبجکت webview و تبدیل یک وب سایت به یک وب اپلیکیشن موبایل
-
کار با انیمیشن ها در اندروید و معرفی انواع انیمیشن
-
راه اندازی تایمر در برنامه های اندرویدی به نحوی که هر مثلا 10 ثانیه یکبار یک رویداد در پروژه ما اجرا شود
-
سه رقم ، سه رقم جدا کردن اعداد در یک آبجکت و نمایش ویدئو در برنامه های اندرویدی و معرفی آبجکت VideoView
-
اجرای صوت در برنامه های اندرویدی و معرفی آبجکت seekbar به صورتی که seekbar در اجرای صوت به صورت یک پیمایشگر عمل می کند
فصل دوم:پروژه اندروید رستورانی
- API چیست(Application Programming Interface) ؟
-
تفاوت API و وب سرویس در چیست؟
-
انواع API
-
ایجاد یک پروژه جدید اندرویدی(ایجاد پروژه رستوران)
-
ایجاد پیش نمایش برای اپلیکیشن
-
راه اندازی پیش نمایش برنامه به صورتی که از طریق یک تایمر برای مدت 17 ثانیه پیش نمایش برنامه نمایش داده می شود و سپس برنامه به طور اتوماتیک به صفحه لاگین ارجاع داده می شود
-
ایجاد بخش نام کاربری و کلمه عبور
-
پیاده سازی بخش Login پروژه به نحوی که کاربر از قسمت کلاینت نام کاربری و کلمه عبور را به سمت سرور ارسال می کند و پاسخ آن را بلافاصه از سمت سرور دریافت می کند و برای بر قراری این اتصال بین کلاینت و سرور از RestFullApi استفاده کردیم
-
پیاده سازی سمت سرور جهت راستی آزمایی نام کاربری و کلمه عبور به نحوی که کلمه عبور و نام کاربری از سمت کلاینت به سرور ارسال میشه و در سمت سرور یک سیستم mvc پیاده سازی کردیم و از طریق زبان برنامه نویسی php ریکوئست های ارسالی از سمت کاربر مورد بررسی قرار می گیرد
-
ارتباط با سرور PHP از طریق API و راستی آزمایی کلمه عبور
-
ایجاد متود getPostDataString در اکتیویتی مربوط به Login که از طریق این متود دیتاهای ارسالی به سمت سرور اینکد می شود
-
دریافت Response از سرور در قسمت کلاینت، در این بخش ما ریکوئستی را به سمت سرور ارسال می کنیم در ادامه یک پاسخ از سمت سرور دریافت می کنیم و شما براساس این پاسخ می توانید در سمت کاربر تصمیم گیری کنید
-
بررسی اتصال به اینترنت از طریق یک Toast در برنامه و ساخت اکتیوتی منوی برنامه که با لاگین شدن در اپلیکیشن کاربر به این اکتیوتی ارجاع گردد
-
طریقه پولی کردن api از طریق قرار دادن یک key در برنامه
-
ایجاد بخش ثبت غذا از طریق API در سرور PHP
-
ساخت api ایجاد غذای جدید در منوی رستوران که با زبان برنامه نویسی php نوشته شده است
-
پیاده سازی بخش کلاینت ایجاد غذای جدید در منوی رستوران به این صورت که کاربر با وارد کردن نام غذاو قیمت غذا و زدن دکمه ارسال ریکوئست های لازم را جهت ثبت غذای جدید در دیتابیس سرور فراهم می آورد
-
پیاده سازی بخش انتخاب غذا در بخش کلاینت و ساخت لایه های گرافیکی لیست ویو جهت دریافت اطلاعات از سمت سرور
-
دریافت اطلاعات متنی از سرور اینترنتی جهت نمایش لیست منوی غذاها در یک لیست ویو و نمایش یک ProgressDialog قبل از لود دیتاهای ارسالی از سمت سرور
-
ساخت api دریافت اطلاعات منوی رستوران اعم از نام و قیمت غذا با زبان برنامه نویسی PHP و در ادامه در سمت کلاینت با استفاده از کلاس JSONParser اطلاعات منوی رستوران از فایل اینترنتی دریافت شده و در یک JSONObject قرار داده می شود و سپس با یک سری کلاس های (class) کار با JSONObject ، اطلاعات را از JSONObject دریافت کرده و به صورت جداگانه، در سه لیست آرایه ای (ArrayList) از نوع رشته (string) ذخیره می کنیم
-
راه اندازی متود onPostExecute در کلاس JSONParse به منظور نمایش اطلاعات ارسالی از سرور در ListView
-
تکمیل متود MyAdapter در کلاس JSONParse و اضافه کردم لایه گرافیکی List_item به لایه اصلی ، تست برنامه و جدا کردن سه رقم سه قم مبلغ غذا در لیست ویو
-
انتخاب غذا از طریق لمس یکی از سطرهای لیست ویو و انتقال آیدی غذا به اکتیوتی دیگر و دریافت آن در یک TextView
-
راه اندازی کلاس DownloadImageTask در اکتیویتی جزئیات غذا ، دریافت عکس غذا از url ، نمایش عکس غذا در یک ImageView و نمایش یک تصویر پیش فرض در صورتی که url حاوی تصویری نباشد
-
راه اندازی api بخش جزئیات غذا از طریق زبان برنامه نویسی php به نحوی که در صورت ارسال ریکوئست دلیت ،غذا از لیست حذف شود و در صورتی که ریکوئست دلیت خالی باشد فقط اطلاعات سطر مربوط به غذای انتخاب شده سلکت می شود
-
سلکت کردن سطر انتخاب شده در لیست ویو به نحوی که با انتقال به کتیوتی جزئیات اطلاعات سطر انتخاب شده در قالب یک آرایه json از سمت سرور دریافت شود
-
جدا کردن عناصر آرایه json در بخش جزئیات غذا به نحوی که urlimage ، نام غذا و آیدی غذا در آبجکت های مشخص شده در فرم جزئیات غذا قرار بگیرد
-
دریافت تصویر غذا در بخش جزئیات از url ارسالی از سمت سرور به صورت داینامیک و ایجاد رویداد کلیک برای باتن حذف به نحوی که با کلیک روی دکمه حذف یک AlertDialog ظاهر شود
-
حذف یک سطر در جزئیات غذا با انتخاب دکمه YES در AlertDialog ،رفع مشکل فارسی در اپلیکیشن ، ایجاد دکمه بازگشت به اکتیویتی قبلی در جزئیات غذا و ایجاد پروگرس بار برای پردازش های برنامه به نحوی که برای انجام تبادل اطلاعات کلاینت با سمت سرور کاربر متوجه این تأخیر در تبادل اطلاعات بشود
-
ایجاد بخش آپلود فایل تصویر غذا از طریق API در سرور PHP
-
انجام مقدمات لازم برای آپلود تصویر غذا به سمت سرور و ایجاد متود LoadImageFromGallery به منظور انتخاب یک تصویر از گالری گوشی
-
ایجاد دکمه بازگشت در بخش انتخاب غذا به نحوی که کاربر با به ثبت رساندن این دکمه به منوی اپلیکیشن منتقل شود
-
نمایش تصویر انتخاب از گالری گوشی در imageview در بخش جزئیات غذا و ارسال نام فایل انتخاب شده به سمت سرور و در بخش ثبت غذای جدید ترتیبی اتخاذ گردید که در ادیت ثبت قیمت غذا فقط امکان درج عدد امکان پذیر باشد
-
ایجاد متود uploadImage در سمت کلاینت که در این متود تصویر انتخاب شده به آرایه بایتی تبدیل شده و پس از رمزگذاری آماده ارسال به سمت سرور می شود
-
ارسال فایل(Image) به سمت سرور از طریق متودmakeHTTPcall
-
پیاده سازی Api مربوط به آپلود فایل با زبان برنامه نویسی php به نحوی که تصویر decode شده در پوشه ای به نام uploads در سمت سرور ذخیره می گردد
-
حذف تصویر ذخیره شده در سرور به نحوی که وقتی یک غذا رو از لیست حذف می کنیم تصویر غذا نیز از سرور حذف شود
-
ایجاد بخش ثبت فاکتور جدید در کلاینت
-
ایجاد api بخش ثبت فاکتور جدید به نحوی که با ارسال ریکوئست ها از سمت کلاینت ساعت و تاریخ ثبت فاکتور نیز در دیتابیس سرور درج می گردد
-
تکمیل بخش ثبت فاکتور جدید سرور به نحوی که پس از ثبت فاکتور جدید یک پیامک حاوی شماره فاکتور برای مشتری ارسال می گردد و مشتری می تواند از طریق شماره ارسالی سفارش خود از طریق صندوق رستوران پیگیری نماید
-
ایجاد بخش لیست فاکتورها در سمت کلاینت به نحوی که فاکتورها ثبت شده در لیست ویو نمایش داده می شود
-
ایجاد api بخش لیست فاکتورها به نحوی که فاکتورهای روز جاری سلکت شده و براساس ساعت درج فاکنور سورت می شود
-
ایجاد بخش دسترسی به منوی رستوران جهت ثبت غذا برای فاکتور درج شده به نحوی که با انتخاب سطر(فاکتور) برنامه به منوی رستوران منتقل می شود و آیدی فاکتور رو از بخش لیست فاکتورها انتقال میدیم به بخش منوی رستوران
-
ایجاد بخش جزئیات فاکتور به نحوی که با انتخاب غذا از منوی رستوران آیدی غذا و آیدی فاکتور به بخش جزئیات فاکتور ارسال می شود تا ما بتوانیم غذا انتخابی رو برای فاکتور انتخابی درج نماییم
-
ساخت api بخش جزئیات فاکتور به نحوی که در صورت ارسال آیدی غذا از سمت کلاینت اطلاعات غذا در این بخش نمایش داده میشود و در صورت عدم ارسال آیدی غذا از سمت کلاینت غذای انتخابی در جرئیات فاکتور ثبت می گردد
-
ادامه ایجاد بخش جزئیات فاکتور در سمت کلاینت به نحوی که با انتقال به بخش جزئیات فاکتور نام غذا ، قیمت غذا و تصویر غذا در این بخش نمایش داده می شود
-
ثبت سفارش برای فاکتورها که در این بخش گارسون می تواند با انتخاب غذا و تعداد سفارش برای هر شماره فاکتور سفارش درج نماید
-
ایجاد لیست فاکتور ها در بخش مدیریت فاکتورها که در این بخش کاربر می تواند با انتخاب فاکتور به جزئیات فاکتور دست پیدا کند
-
اطلاع رسانی به کاربر در صورت فقدان دیتا در بخش مدیریت فاکتورها به این شکل که با ورود کاربر به بخش مدیریت فاکتورها در صورتی که دیتایی در این بخش وجود نداشته باشه یک پیغام به گارسون نشان داده می شود مبنی بر اینکه هیچ دیتایی در قسمت مدیریت فاکتورها هنوز ثبت نشده است
-
نوشتن api جهت دریافت جمع کل فاکتور به نحوی که با ارسال آیدی فاکتور به سمت سرور جمع کل فاکتور سلکت شده در سمت کلاینت دریافت می گردد
-
ایجاد بخش جزئیات فاکتور به نحوی که با انتخاب فاکتور در بخش مدیریت فاکتورها کاربر به جزئیات فاکتور ارجاع داده می شود و در این بخش لیست سفارشات مشتری و جمع کل فاکتور توسط گارسون ملاحظه می گردد
-
ساخت api حذف جزئیات فاکتور با احتساب اعمال شرط جلوگیری از حذف فاکتورهایی که دارای زیر مجموعه هستند
-
ایجاد اکتیوتی حذف جزئیات فاکتور و سه رقم سه رقم جدا کردن مبالغ در جزئیات فاکتور
-
بررسی فاکتور جهت حذف در سمت کلاینت به نحوی که با لمس سطر مربوط اگر فاکتور زیر مجموعه داشته باشد کلمه ok از سمت سرور به کلاینت ارسال می شود و اگر فاقد زیر مجموعه بود کلمه null به سمت کلاینت ارسال می شود
-
حذف فاکتور در صورت عدم ثبت جزئیات برای فاکتور به نحوی که اگر فاکتور جزئیات نداشت با لمس سطر یک alertDialog ظاهر می شود و با زدن دکمه تایید فاکتور حذف می شود اما اگر فاکتور زیر مجموعه داشت باید کاربر به جزئیات فاکتور ارجاع داده شود و اول جزئیات فاکتور را حذف کند و بعد اصل فاکتور
-
حذف جزئیات فاکتور که با انتخاب سطر آیدی سطر به سمت سرور ارسال می شود و سطر سلکت شده حذف می گردد
-
ساخت api جهت حذف جزئیات فاکتور به نحوی که با ارسال آیدی انتخابی سر منتخب حذف گردد
-
ایجاد بخش منوی رستوران از طریق API ودریافت اطلاعات از سرور PHP
-
ثبت غذای انتخابی مشتری در فاکتور از طریق API در سرور PHP
-
مدیریت فاکتور مشتری
-
حذف غذا از فاکتور مشتری
-
حذف غذا از لیست غذاها
-
نحوه تغییر فوت برنامه و اعمال فونت های مختلف در اکتیویتی های برنامه
-
ایجاد یک منوی فانتزی و زیبا در برنامه به صورت کشویی
-
نحوه دریافت لوکیشن گوشی و ارسال آن به سمت سرور به نحوی که طول و عرضی جغرافیایی دستگاه توسط برنامه دریافت شده و در دیتابیس سرور ذخیره می گردد
-
نمایش طول و عرض جغرافیایی ذخیره شده در دیتابیس سرور و نمایش مکان دستگاه روی نقشه در برنامه اندرویدی
فصل سوم:پروژه رستوران تحت وب
- ساخت بخش Login و میزکار وب اپلیکیشن رستورانی به صورت استاتیک
- داینامیک کردن بخش Login در وب اپلیکیشن رستورانی به نحوی که در صورتی که نام کاربری و کلمه عبور اشتباه وارد شود از طریق متود get ی پیغام نام کاربری یا کلمه عبور اشتباه است به سمت کاربر ارسال می گردد در غیر این صورت کاربر به پنل برنامه ارجاع می گردد
- داینامیک کردن بخش مدیریت فاکتور در وب اپلیکیشن رستورانی به نحوی که بدون رفرش شدن صفحه در صورتی که گارسون سفارش جدیدی را ثبت کند جدول بروز آوری شود
- جلوگیری از ورود به بخش لیست فاکتور ها قبل از اینکه کاربر لاگین شود از طریق سشن ها و تغییر وضعیت فاکتور از دردست اقدام به تحویل سفارش مشتری
- نمایش یک تصویر gif قبل از لود اطلاعات فاکتورها و حذف فاکتورها. البته فاکتورهایی که داری ضمائم هستند امکان حذف آنها در این قسمت مقدور نیست و اول باید کاربر ضمائم فاکتور را حذف کند
- اعمال تغییرات ایجاد شده در هاست اصلی و ایجاد بخش جزئیات فاکتور به صورت استاتیک
- داینامیک کردن بخش جزئیات فاکتور مشتری به نحوی که سفارش مشتری ، نام مشتری و جمع فاکتور در این بخش از دیتابیس دریافت می گردد
- در صورتی که در جزئیات فاکتور اطلاعاتی وجود نداشته باشد از طریق یک پیغام در جدول، اطلاع رسانی می شود و در این بخش امکان حذف جزئیات فاکتور فراهم می گردد
- کار روی دکمه بازگشت و دکمه چاپ به نحوی که بابه ثبت رساندن دکمه بارگشت به لیست فاکتورها ارجاع داده می شویم و با به ثبت رساندن دکمه چاپ آیدی فاکتور به بخش چاپ فاکتور منتقل می شود
- اعمال تغییرات ایجاد شده در هاست اصلی و تنظیم پیش نمایش فاکتور جهت چاپ فاکتور با فیش پرینتر
- تکمیل تنظیم پیش نمایش فاکتور جهت چاپ فاکتور با فیش پرینتر البته فعلاً به صورت استاتیک
- داینامیک کردن پیش نمایش فاکتور جهت چاپ به نحوی که اطلاعات از دیتابیس دریافت گردد
- ایجاد بخش تغییر کلمه عبور در وب اپلیکیشن رستورانی
- انتقال بخش تغییر کلمه عبور روی هاست اصلی و کار روی لینک logout به نحوی که با انتخاب این لینک به بخش login منتقل می شویم
- ایجاد بخش داشبورد جهت نمایش جمع کل فروش رستوران در دوازده روز گذشته
- انتقال بخش داشبورد روی هاست اصلی و ایجاد بخش گزارشات فروش رستوران به صورت استاتیک
- داینامیک بخش گزارشات فروش رستوران و اضافه کردن پلاگین datepicker و صفحه بندی جدول به این بخش از برنامه
- سورت کردن فاکتورها براساس شماره فاکتور از بزرگترین شماره به کوچکترین شماره و ایجاد متود سرچ و ارسال پارامتر های به این متود جهت سلکت فاکتورها و مقایسه دو تاریخ ارسالی به نحوی که در صورت بزرگتر بودن تاریخ اول یک پیغام از طریق متود GET به سمت کاربر ارسال می شود مبنی بر اینکه تاریخ بازه اول نمی تواند بزرگتر از تاریخ بازه دوم باشد
- سلکت کردن فاکتور براساس تاریخ ، نام مشتری و شماره فاکتور به نحوی که کاربر می تواند فاکتورهای بین دو بازه زمانی خاص را نیز سلکت نماید
- ایجاد بخش پروفایل من و ارسال تصویر به سمت سرور و دریافت نام فایل ، حجم فایل ، مسیر فایل و فرمت فایل
- انتقال تصویر ازحافظه کامپیوتر به پوشه ای در پروژه
- تغییر تصویر پیش فرض پروفایل به نحوی که کاربر می تواند تصویر خود یا لگوی شرکت را جایگزین تصویر پیش فرض نمیاد
- انتقال کلیه بخش های پروژه روی هاست و لینک کردن تمامی قسمت های وب اپلیکیشن در منوی پروژه
فصل چهارم:مباحث پایه API نویسی سایت به سایت
-
آشنایی با کتابخانه CURL و تبادل اطلاعات بین دو سایت و در این قسمت دو پروژه پیاده سازی میگردد یکی به عنوان client و دیگری به عنوان server
-
پیاده سازی کامل client در قالب یک فرم لاگین پسورد و آماده سازی دیتا جهت ارسال به سمت سرور بدین شکل که آدرس api و دیتای اینکد شده جهت ارسال و همچنین متود callapi رو در این بخش تعریف کردیم
-
پیاده سازی server ، دریافت اطلاعات رسالی از سمت کاربر ،دیکد کردن داده ها و اتصال به دیتابیس
-
سلکت کردن داده ها درسمت سرور و بررسی اینکه لاگین پسورد ارسالی از سمت کاربر آیا در دیتابیس سرور موجود هست یا نه و در ادامه امکان اینسرت کردن دیتاهای ارسالی در دیتابیس سرور نیز بررسی می گردد و نتیجه به عنوان یک response به سمت کاربر ارسال می شود که پس از دیکد کردن دیتای ارسالی پاسخ از طریق متود GET در مرورگر نمایش داده میشود
-
طریقه fetch و fetchall کردن داده های ارسالی از یک سایت دیگر به سایت ما از طریق CURL
-
ایجاد کنترلر ، مادل و ویو جهت ارسال فایل از یک سایت به سایت دیگر
-
ارسال فایل به سمت سرور از طریق خط فرمان
-
ارسال فایل به سمت سرور بدون استفاده از خط فرمان و از طریق ثبت دکمه ذخیره تصویر
-
انجام یک مینی پروژه (پروفایل من) با کتابخانه curl به نحوی که ما یک تصویر پرسنلی را آپلود می کنیم در یک سایت دیگر و نتیجه آن را با نمایش تصویر در یک تگ image ملاحظه می کنیم
-
دریافت فایل از سایتهای دیگر از طریق api
فصل پنجم:ایجاد پروژه آژانس مسافرتی
- ایجاد پروژه آژانس مسافرتی در قالب در یک پروژه MVC
- ایجاد بخش ثبت پرواز و ارسال پارامترهای پروازهای یکطرفه به سمت سرور
- دریافت پارامترهای پروازهای یکطرفه در سمت سرور و ارسال پاسخ اطلاعات پروازها به سمت کلاینت(از طریق api)
- دریافت پارامترهای پروازهای دو طرفه در سمت سرور و ارسال پاسخ اطلاعات پروازها به سمت کلاینت (از طریق api)
- ایجاد بخش جزئیات پرواز و ورود اطلاعات مسافرین در این بخش به نحوی که با تعیین تعداد مسافرین توسط کاربر دقیقا به تعداد نفرات input در این بخش ایجاد میشود که کاربر باید کد ملی مسافرین را در آن وارد کند و با زدن دکمه خرید بلیط کد ملی مسافرین در قالب یک آرایه به بخش بعدی که تأیید اطلاعات است ارسال می گردد
- داینامیک کردن بخش جزئیات پرواز به نحوی که با انتخاب یک پرواز در بخش مشاهده پروازها از طریق دریافت آیدی سطر ،کلیه اطلاعات مربوط به پرواز سلکت شده از طریق api از سرور سایت فرودگاه دریافت شده و در بخش جزئیات پرواز نمایش داده می شود
- جلوگیری از ورود کاربر به مرحله تأیید اطلاعات در صورتی که اطلاعات مسافرین را ثبت نکرده باشد به نحوی یک پیغام در صفحه ظاهر می گردد که لطفاً اطلاعات مسافرین را درج نمایید
- ایجاد بخش تأیید اطلاعات و دریافت اطلاعات پرواز از سرور فروردگاه از طریق api
- ایجاد بخش تأیید اطلاعات و دریافت اطلاعات مسافرین از سرور ثبت احوال از طریق api
- ایجاد بخش تأیید اطلاعات و محاسبه هزینه کل سفر به این صورت که هزینه افراد زیر دو سال ، افراد بین دو تا 12 سال و افراد بزرگسال به صورت جدا نمایش داده می شود و جمع کل هزینه ها نیز به صورت بولد به کاربر ارائه می گردد
- جلوگیری از خطای کاربر در انتخاب سن کاربران در این بخش فیلتر مشخصی تعریف گردید به این صورت که براساس تاریخ تولد دریافتی از سرور ثبت احوال سن افراد مشخص می گردد و در قالب یک آرایه بر می گردد
- دریافت تعداد مسافرین بزرگسال،2 تا 12 سال و زیر دو سال از سرور ثبت احوال و در صورتی که مثلاً تعداد مسافرین زیر 2 سال انتخاب شده توسط کاربر بیشتر از مقدار دریافتی از سمت سرور ثبت احوال باشد ما متوجه میشیم که کاربر تعداد مسافرین رو براساس سن اشتباه انتخاب کرده و یک پیغام خطا برای کاربر ارسال می گردد
- اتصال به درگاه بانکی جهت پرداخت هزینه و ارسال پارامترهای لازم مثل قیمت به درگاه
- ایجاد بخش callback که در صورت انجام تراکنش اطلاعات بلیط از سرور دریافت شده و در جدولی به نمایش گذاشته می شود
- اتصال به درگاه بانکی و در صورت عدم انجام تراکنش کاربر به بخش جزئیات پرواز ارجاع داده می شود
- ارسال پارامتر های لازم جهت صدور بلیط پرواز به سمت سرور از طریق api
- ذخیره اطلاعات بلیط پس از انجام تراکنش در دیتابیس سرور
- نمایش جدول اطلاعات بلیط در بخش callback پس از انجام تراکنش
- با ثبت بلیط از تعداد صندلی های خالی پرواز کسر می گردد و اگر تعداد مسافرین انتخاب شده توسط کاربر بیشتر از موجودی صندلی خالی باشد یک پیغام برای کاربر ارسال می گردد که ظرفیت پرواز تکمیل است
- ایجاد بخش چاپ بلیط پرواز(ارسال پارامتر شماره سریال بلیط به سمت سرور جهت سلکت اطلاعات)
- داینامیک کردن بخش چاپ بلیط پرواز و تنظیمات صفحه جهت تهیه چاپ در سایزهای مختلف
- جلوگیری توقف بیش از سه دقیقه کاربر در بخش تأیید اطلاعات بلیط به دلیل آنکه ممکن است با گذشت زمان نرخ های پرواز تغییر کند لذا اگر کاربر در اتصال به درگاه تعلل کند مجدداً به بخش ثبت پرواز ارجاع می گردد و مجدداً باید نسبت به رزرو پروازها اقدام نمایید
- ایجاد بخش رزروهای من به نحوی که تمامی رزروهای انجام شده اعم از پرواز ، قطار ، اتوبوس و هتل در این بخش تا 60 روز نگهداری می گردد و کاربر می تواند با مراجعه به این بخش هم از رزروهای خود چاپ تهیه کرده و هم تاریخ ، زمان و سایر اطلاعات آنها را چک نماید
- ایجاد بخش رزرو بلیط اتوبوس
- انتخاب شماره صندلی توسط کاربر و تغییر آیکن شماره صندلی به حالت انتخاب و تبدیل آیکن پیش فرض به آدمک آبی رنگ
- ایجاد فیلتر در بخش رزرو بلیط اتوبوس به نحوی که اگر کاربر صندلی را انتخاب نکند و کد ملی را وارد ننمایید از طریق ارسال یک alert اجازه ورود به مرحله بعد به کاربر داده نخواهد شد
- ارسال شماره صندلی و کد ملی به بخش تأیید اطلاعات بلیط اتوبوس به صورتی که شماره صندلی های انتخاب شده در قالب یک آرایه به مرحله بعد ارسال می گردد
- داینامیک کردن جدول بخش تأیید اطلاعات بلیط اتوبوس که شامل هزینه کل ، شماره صندلی ها، نام سرپرست مسافرین ، تاریخ حرکت و... است
- ارسال پارامتر تشخیص جنسیت مسافرین و ایجاد محدودیت توقف کاربر در بخش تأیید اطلاعات بلیط با توجه به احتمال تغییر قیمت ها
- ارتباط به درگاه زرین پال جهت پرداخت هزینه بلیط اتوبوس و ارسال پارامتر های لازم بخش callback جهت رویت اطلاعات بلیط خریداری شده توسط کاربر
- ارسال پارامترهای لازم به سمت سرور پایانه از طریق api جهت ثبت اطلاعات بلیط خریداری شده در سرور پایانه مسافربری
- ذخیره اطلاعات بلیط خریداری شده توسط کاربر در سرور پایانه به نحوی که مثلا اطلاعات خریدار بلیط اعم از نام و نام خانوادگی از سرور ثبت احوال دریافت شده و اطلاعات اتوبوس هم از سرور پایانه دریافت می گردد در پایان این اطلاعات به همراه شماره صندلی های انتخاب شده در جدول callback سرور که مربوط به بلیط های خریداری شده است ذخیره می گردد
- کسر صندلی های خالی از یک سفر با خرید بلیط توسط کاربران و اعمال جنسیت مسافرین در جدول یک سفر
- ایجاد بخش چاپ بلیط اتوبوس به نحوی کاربر با به ثبت رساندن دکمه چاپ به این بخش ارجاع داده میشود و می تواند از بلیط چاپ تهیه نماید
- داینامیک کردن بخش چاپ بلیط اتوبوس و همین طور اصلاح بخش ثبت اطلاعات مسافر به نحوی که اگر کاربر کد ملی اشتباه را وارد کند که در سرور ثبت احوال وجود ندارد یک alert به سمت کاربر ارسال می گردد که چنین کدی در سرور یافت نشد و در این بخش از ajax کمک می گیریم
- در این بخش با خرید بلیط توسط مسافر رنگ صندلی ها براساس جنسیت تغییر می کند آقایون نارنجی رنگ و خانوم ها صورتی.و با خرید بلیط توسط مسافر صندلی غیر فعال می گردد و دیگر امکان کلیک روی آن میسر نخواهد بود
- ایجاد بخش رزرو بلیط قطار و پیاده سازی قسمت انتخاب پارامتر ها نظیر تاریخ حرکت ، مبدأ و مقصد توسط مسافر و ارسال به بخش لیست قطارها
- ارسال پارامتر های انتخاب شده توسط کاربر به سمت سرور از طریق api و دریافت اطلاعات از سمت سرور در بخش مشاهده لیست قطارها
- ایجاد بخش جزئیات اطلاعات قطار انتخابی توسط مسافر و بنا بر تعداد مسافرین اینپوت نام، نام خانوادگی و کد ملی در این بخش تولید می گردد که مسافرین باید اطلاعات خود را در این اینپوت ها وارد نمایند
- ایجاد بخش تأیید اطلاعات قطار انتخاب شده توسط کاربر و ارسال اطلاعات مسافرین از بخش جزئیات قطار به این بخش
- ایجادفیلتر در بخش تأیید اطلاعات در خصوص تکمیل اطلاعات مسافرین به نحوی که اگر کاربر اطلاعات مسافرین رو به طور کامل در اینپوت های مربوطه تکمیل نکند به صفحه جزئیات قطار برگردانده می شود و از طریق یک Alert این موضوع به اطلاع کاربر می رسد
- داینامیک کردن جدول های بخش تأیید اطلاعات قطار انتخابی توسط کاربر شامل جدول اطلاعات مربوط به قطار انتخابی ، جدول اطلاعات مسافرین و جدول هزینه سفر
- ایجاد یک شرط در بخش تأیید اطلاعات به نحوی که اگر کاربر بیش از سه دقیقه در این بخش توقف کند و کلید خرید بلیط را نزند به دلیل احتمال تغییر قیمت مجدداً به بخش تعیین پارامترهای انتخاب قطار منتقل می شودو سپس ایجاد بخش callback که پس از پرداخت هزینه پارامترهای لازم به این بخش منتقل می گردد
- شناسایی شماره صندلی و شماره کوپه مسافر در صورتی که در قسمت انتخاب پارامترها کاربر نوع کوپه را معمولی و وضعیت کوپه را عمومی انتخاب کرده باشد
- آپدیت صندلی خالی و کوپه خالی با رزرو شدن صندلی توسط مسافر به نحوی که در جدول اطلاعات قطار تعداد صندلی رزرو شده از صندلی خالی موجود کسر می گردد
- ثبت اطلاعات بلیط مسافر در دیتابیس در صورتی که مسافر نوع کوپه را معمولی و وضعیت کوپه را عمومی انتخاب کرده باشد
- شناسایی کوپه و شماره صندلی مسافر در صورتی که مسافر نوع کوپه رامعمولی و وضعیت کوپه رادربست انتخاب کند و آپدیت موجودی کوپه و صندلی در جدول اطلاعات قطار و ذخیره اطلاعات بلیط مسافر در دیتابیس
- شناسایی کوپه و شماره صندلی در صورتی که نوع کوپه ویژه آقایان یا بانوان انتخاب شود و آپدیت موجودی کوپه و صندلی در جدول اطلاعات قطار و ذخیره اطلاعات بلیط مسافر در دیتابیس
- ایجاد فیلتر در بخش جزئیات قطار به نحوی که اگر تعداد مسافرین و درخواست کوپه با موجودی قطار تطابق نداشت کاربر به بخش انتخاب پارامترها منتقل شود و یک پیغام در این قسمت چاپ شود مبنی بر اینکه موجودی صندلی قطار کافی نیست
- دریافت اطلاعات بلیط خریداری شده قطار در بخش callback پس پرداخت هزینه بلیط
- تهیه چاپ از بلیط قطار خریداری شده و ذخیره اطلاعات بلیط در بخش پروفایل که تا 60 روز اعتبار دارد و کاربر می تواند در هر زمان به پروفایل خود مراجعه و اطلاعات بلیط خود را چک کرده و یا پرینت تهیه نماید
- ایجاد بخش رزرو هتل ، در این بخش اگر تعداد مسافرین با تعداد اتاق انتخاب شده تطابق نداشته باشد یک alert برای کاربر ارسال میگردد
- ارسال پارامترهای شهر انتخابی ، تعداد مهیمانان ، تعداد اتاق درخواستی و تعداد روز اقامت به بخش لیست هتل های پیشنهادی
- بدست آوردن تعداد روزهای اقامت در هتل از طریق کسر دو تاریخ شروع اقامت و پایان اقامت
- دریافت لیست هتل های پیشنهادی از پایگاه داده ها براساس پارامترهای ارسالی توسط کاربر
- نمایش شروع قیمت اتاق های هتل در لیست هتل های پیشنهادی
- ایجاد بخش جزئیات هتل انتخابی توسط کاربر و داینامیک کردن نمایش تعداد اتاق های خالی هتل ، نام و ستاره هتل ، تعداد میهمانان و تعداد اتاق درخواستی
- ایجاد بخش جزئیات هتل انتخابی توسط کاربر و داینامیک کردن بخش گالری تصاویر هتل ، توضیحات هتل ، امکانات هتل و نزدیک ترین مکان های دیدنی اطراف هتل
- ایجاد بخش جزئیات هتل انتخابی توسط کاربر و داینامیک کردن بخش ارائه لیست اتاق های هتل که در این لیست نوع اتاق ، داری صبحانه یا فاقد صبحانه و همینطور قیمت کل اتاق مشخص شده است
- سلکت کردن اتاق های دارای صبحانه از طریق ajax بدون اینکه صفحه رفرش شود
- ایجاد بخش ورود اطلاعات میهمانان در این بخش اگر تعداد میهمانان با تعداد تخت های رزرو شده مطابقت نداشته باشد کاربر به بخش انتخاب پارامترها ارجاع می گردد
- ایجاد بخش تأیید اطلاعات جهت نهایی کردن رزرو هتل
- داینامیک کردن جداول اطلاعات اتاق رزرو شده و اطلاعات میهمانان در بخش تأیید اطلاعات
- محاسبه هزینه هتل در بخش تأیید اطلاعات
- ایجاد بخش callback رزرو هتل و انتقال پارامترها از سمت سرور به سمت کلاینت
- ذخیره اطلاعات میهمانان و اطلاعات اتاق درخواستی در تیبل callback پس از پرداخت هزینه توسط کاربر
- ایجاد بخش چاپ رزرو هتل و داینامیک کردن جداول آن
- با رزرو اتاق از موجودی اتاق های خالی هتل کسر می گردد و این مطلب در بخش تأیید اطلاعات نمایش داده می شود
- اصلاح نحوه محاسبه قیمت اتاق که محاسبه براساس نفرات حذف و براساس تعداد اتاق درخواستی و تعداد روزهای اقامت در هتل محاسبه خواهد شد و تمامی بخش هایی که با این موضوع درگیر بود اصلاح گردید
- تحت شبکه کردن برنامه به نحوی که ما یک سیستم رو سرور کردیم و در چند سیستم دیگه سایت آژانس مسافرتی رو راه اندازی کرده و به شما عزیزان نشان دادیم که چگونه اطلاعات از یک سرور دیگه غیر از سرور سایت آژانس دریافت می گردد و در سایت ما نمایش داده می شود و این رو به صورت کاملاً عملی بهتون نشون دادیم
![](/img/gallery.jpg)
![](/img/clicksite_takhfif_afterbuy.jpg)
بخش های رایگان این مجموعه آموزشی:
API چیست(Application Programming Interface) ؟ و... ( بخش 1 ) دانلود مستقیم معرفی ide برای پیاده سازی برنامه اندرویدی و سایر پیش نیاز های لازم ( بخش 2 ) دانلود مستقیم ساخت شبیه ساز جهت تست پروژه اندروید ( بخش 3 ) دانلود مستقیم آشنایی با دستور Toast و.... ( بخش 4 ) دانلود مستقیم آشنایی با context در برنامه نویسی اندروید ( بخش 9 ) دانلود مستقیم آشنایی با LinearLayout ( بخش 13 ) دانلود مستقیم دریافت اطلاعات ثبت شده در جدول دیتابیس SQLite در اکتیویتی های مختلف ( بخش 16 ) دانلود مستقیم آشنایی با Multi Thread ( بخش 25 ) دانلود مستقیم طریقه کار با یک RadioButton و... ( بخش 30 ) دانلود مستقیم آشنایی با آبجکت webview ( بخش 31 ) دانلود مستقیم معرفی انواع api از نظر ساختاری ( بخش 37 ) دانلود مستقیم بررسی اتصال به اینترنت از طریق یک Toast در برنامه ( بخش 44 ) دانلود مستقیم راه اندازی api بخش جزئیات غذا از طریق زبان برنامه نویسی php ( بخش 55 ) دانلود مستقیم سلکت کردن سطر انتخاب شده در لیست ویو ( بخش 56 ) دانلود مستقیم ایجاد دکمه بازگشت در بخش انتخاب غذا ( بخش 61 ) دانلود مستقیم ایجاد بخش ثبت فاکتور جدید ( بخش 67 ) دانلود مستقیم ادامه ایجاد بخش جزئیات فاکتور در سمت کلاینت ( بخش 75 ) دانلود مستقیم ایجاد لیست فاکتور ها در بخش مدیریت فاکتورها ( بخش 77 ) دانلود مستقیم ایجاد اکتیوتی حذف جزئیات فاکتور ( بخش 82 ) دانلود مستقیم ساخت بخش Login و میزکار وب اپلیکیشن رستورانی ( بخش 92 ) دانلود مستقیم اعمال تغییرات ایجاد شده در هاست اصلی ( بخش 97 ) دانلود مستقیم اعمال تغییرات ایجاد شده در هاست اصلی و تنظیم پیش نمایش فاکتور جهت چاپ فاکتور با فیش پرینتر ( بخش 101 ) دانلود مستقیم انتقال بخش تغییر کلمه عبور روی هاست اصلی ( بخش 105 ) دانلود مستقیم انتقال بخش داشبورد روی هاست اصلی ( بخش 108 ) دانلود مستقیم ایجاد بخش پروفایل من ( بخش 112 ) دانلود مستقیم انتقال کلیه بخش های پروژه روی هاست ( بخش 115 ) دانلود مستقیم ایجاد پروژه آژانس مسافرتی در قالب در یک پروژه MVC ( بخش 126 ) دانلود مستقیم ایجاد بخش تأیید اطلاعات و دریافت اطلاعات پرواز از سرور فروردگاه از طریق api ( بخش 133 ) دانلود مستقیم ایجاد بخش callback که در صورت انجام تراکنش اطلاعات بلیط در این بخش ملاحظه می گردد ( بخش 139 ) دانلود مستقیم اتصال به درگاه بانکی ( بخش 140 ) دانلود مستقیم داینامیک کردن بخش چاپ بلیط پرواز ( بخش 146 ) دانلود مستقیم ایجاد بخش رزرو بلیط اتوبوس به صورت استاتیک ( بخش 150 ) دانلود مستقیم ادامه بخش انتخاب صندلی((دو)) ( بخش 154 ) دانلود مستقیم ارتباط به درگاه زرین پال جهت پرداخت هزینه بلیط اتوبوس ( بخش 159 ) دانلود مستقیم ارسال پارامترهای لازم به سمت سرور پایانه از طریق api جهت ثبت بلیط خریداری شده در سرور ( بخش 160 ) دانلود مستقیم ارسال پارامتر ها به سمت سرور از طریق api و دریافت اطلاعات از سمت سرور در بخش مشاهده لیست قطارها ( بخش 167 ) دانلود مستقیم داینامیک کردن جدول های بخش تأیید اطلاعات قطار انتخابی توسط کاربر ( بخش 171 ) دانلود مستقیم ایجاد بخش callback که کاربر پس از پرداخت هزینه به این بخش منتقل خواهد شد ( بخش 172 ) دانلود مستقیم ایجاد بخش ورود اطلاعات میهمانان ( بخش 192 ) دانلود مستقیم ایجاد بخش تأیید اطلاعات ( بخش 193 ) دانلود مستقیم داینامیک کردن بخش تأیید اطلاعات ( بخش 194 ) دانلود مستقیم- آشنایی با معماری برنامه های اندرویدی
- ساخت شبیه ساز جهت تست پروژه اندروید
- آشنایی با دستور Toast و حلقه for در برنامه های اندرویدی
- تغییر مقدار ، رنگ و اندازه یک TextView از طریق برنامه و اعمال رویداد کلیک روی TextView که با لمس آن در برنامه یک message در صفحه ایجاد می گردد
-نحوه حرکت روی اکتیوتی ها
- نحوه close کردن یک اکتیوتی و طریقه انتقال اطلاعات از یک اکتیوتی به اکتیویتی دیگر را خواهیم آموخت
- طریقه ایجاد یک منو در برنامه های اندرویدی
- آشنایی با context در برنامه نویسی اندروید ، معرفی انواع کانتکس و ایجاد یک کلاس از نوع application
- آشنایی با DatepickerDialog، TimePickerDialog،progressDialog ، AlertDialog
-طریقه ارسال پیامک با برنامه های اندرویدی از طریق خود برنامه
- آشنایی باSMS_RECEIVED در برنامه های اندرویدی که پس از ارسال پیامک به گوشی های اندرویدی یک رویداد قابلیت اجرا پیدا می کند
- آشنایی با LinearLayout و کار روی UI پروژه
- آشنایی با RelativeLayout و کار روی UI پروژه
- طریقه ساخت و استفاده از دیتابیس SQLite در پروژه های اندرویدی
-دریافت دیتاهای ثبت شده در دیتابیس در اکتیوتی های دیگر و مثلاً نمایش در یک ادیت باکس
- پیاده سازی یک مینی پروژه با دیتابیس SQLite با قابلیت ورود اطلاعات ، نمایش اطلاعات در یک List View ، جستجوی داده ها ، حذف داده ها و انتخاب داده ها
- ایجاد کلاسی به نام DBAdapter در مینی پروژه که در این کلاس کلیه تنظیمات مربوط به دیتابیس را پیاده سازی خواهیم کرد
- ایجاد کلاسی به نام Mokhatab در مینی پروژه که پردازش داده های دیتابیس از طریق این کلاس انجام خواهد گرفت
- ادامه تکمیل کلاس DBAdapter در مینی پروژه و ایجاد متودهای نمایش کلیه داده های جداول دیتابیس ، سلکت یک دیتای خاص ، اضافه کردن یک داده به جداول دیتابیس ، حذف داده ها ، بروز آوری داده ها و جستجوی داده ها
- ایجاد فرم ورود اطلاعات به دیتابیسSQLite در مینی پروژه کار با دیتابیس با قابلیت جلوگیری از خالی ماندن EditText ها هنگام ورود اطلاعات
- نمایش دیتای ذخیره شده در دیتابیس در یک لیست ویو در مینی پروژه کار با دیتابیس SQLite
- امکان سرچ دیتاهای ذخیره شده در دیتابیس از طریق یک EditText و امکان حذف فیلتر انجام شده از طریق لمس دکمه همه و امکان سلکت کردن اطلاعالت یک سطر لیست ویو با لمس سطر مورد نظر و انتقال اطلاعات آن به یک اکتیوتی دیگر
- حذف دیتای سلکت شده در لیست ویوی مینی پروژه از طریق یک AlertDialog
-آشنایی با Multi Thread جهت اجرای بهتر پروژه های اندروید
- ایجاد یک فرم لاگین و پسورد و راستی آزمایی اطلاعات ثبت شده در دیتابیس SQLite
- نحوه کار با camera گوشی به این شکل که در برنامه امکان ارتباط با camera گوشی فراهم می گردد و تصویر برداشت شده در یک image view در پروژه ما نمایش داده میشود
- تبدیل دیتای json به یک استرینگ معمولی و جداسازی عناصر آن و قرار دادن هر عنصر در یک EditText
- طریقه کار با یک RadioButton و CheckBox و دریافت مقادیر آنها و قرار دادن در یک
-ایجاد یک DatePickerDialog شمسی با قابلیت انتخاب تاریخ و انتقال تاریخ انتخاب شده در یک EditText
-آشنایی با آبجکت webview و تبدیل یک وب سایت به یک وب اپلیکیشن موبایل
-کار با انیمیشن ها در اندروید و معرفی انواع انیمیشن
-راه اندازی تایمر در برنامه های اندرویدی به نحوی که هر مثلا 10 ثانیه یکبار یک رویداد در پروژه ما اجرا شود
-سه رقم ، سه رقم جدا کردن اعداد در یک آبجکت و نمایش ویدئو در برنامه های اندرویدی و معرفی آبجکت VideoView
-اجرای صوت در برنامه های اندرویدی و معرفی آبجکت seekbar به صورتی که seekbar در اجرای صوت به صورت یک پیمایشگر عمل می کند
( API چیست(Application Programming Interface) ؟ و... )
تفاوت API و وب سرویس در چیست؟
انواع API
معرفی سرفصل های دوره
( معرفی ide برای پیاده سازی برنامه اندرویدی و سایر پیش نیاز های لازم )
( ساخت شبیه ساز جهت تست پروژه اندروید )
( آشنایی با دستور Toast و.... )
( تغییر مقدار یک TextView از طریق برنامه و... )
( حرکت روی اکتیوتی ها و... )
( نحوه close کردن یک اکتیوتی و... )
( ساخت منو در اندروید )
( آشنایی با context در برنامه نویسی اندروید )
( آشنایی با progressDialog و... )
progressDialog
AlertDialog
TimePickerDialog
DatepickerDialog
( طریقه ارسال پیامک با برنامه های اندرویدی )
( آشنایی باSMS_RECEIVED )
( آشنایی با LinearLayout )
( آشنایی با RelativeLayout )
( کار با دیتابیس در برنامه های اندرویدی )
( دریافت اطلاعات ثبت شده در جدول دیتابیس SQLite در اکتیویتی های مختلف )
( در این بخش یک مینی پروژه برای دیتابیس SQLite پیاده سازی خواهیم کرد )
( پیاده سازی کلاسی به نام DBAdapter در مینی پروژه )
( پیاده سازی کلاسی به نام Mokhatab در مینی پروژه )
( ادامه تکمیل کلاس DBAdapter در مینی پروژه )
( ایجاد فرم ورود اطلاعات به دیتابیسSQLite در مینی پروژه کار با دیتابیس )
( نمایش دیتای ذخیره شده در دیتابیس در یک لیست ویو )
( امکان سرچ دیتاهای ذخیره شده در دیتابیس از طریق یک EditText و.. )
( حذف دیتای سلکت شده در لیست ویو )
( آشنایی با Multi Thread )
( ایجاد یک فرم لاگین و پسورد )
( نحوه کار با camera گوشی )
( ایجاد یک DatePickerDialog شمسی )
( تبدیل دیتای json به یک استرینگ معمولی )
( طریقه کار با یک RadioButton و... )
( آشنایی با آبجکت webview )
( کار با انیمیشن ها در اندروید )
( راه اندازی تایمر در برنامه های اندرویدی )
( سه رقم ، سه رقم جدا کردن اعداد در یک آبجکت و نمایش ویدئو در برنامه های اندرویدی )
( اجرای صوت در برنامه های اندرویدی )
![](/img/darsad.png)
تخفیف تا تاریخ (تخفیف فوق،صرفا به خرید کل پکیج،و یا خرید فصل ها تعلق می گیرد و به خرید تک بخش ها،اعمال نمی گردد)
وضعیت دوره: تکمیل شده
تعداد قسمت ها : 201 قسمت
سطح آموزش: صفر تا صد
به همراه کدها و فایل های آموزش
پشتیبانی فنی: دارد
می توانید پس از دریافت مجموعه،مشکلات و سوالات تخصصی و فنی خود را با سازنده این مجموعه، (مهندس میرمحمدی ) در میان گذاشته و برطرف نمایید.
تعداد فصل ها: 5 فصل
مدت زمان: 92 ساعت و 2 دقیقه
افزودن پکیج به سبد خرید
جهت اطلاع از بروزرسانی این دوره آموزشی و اطلاع از بخش های جدید،ایمیل خود را وارد نمایید:
نظر/پرسش/پیشنهاد شما
در صورت تمایل به دریافت پیامک به هنگام پاسخ به سوال شما و یا به هنگام درج نظر شما در سایت، شماره همراه خود را وارد نمایید.
جهت بزرگنمایی،ماوس را روی تصویر حرکت دهید
![](/img/39.gif)
در حال بارگزاری تصاویر...
نظرات/پرسش ها/پیشنهادات ( صفحه 2 )
علی
میگه:
سلام،برای نوشتن api برای اپلیکیشن اندروید فصل 2 کفایت میکنه ؟
من برنامه نویسی اندروید تا حدودی بلدم و فقط میخوام api نویسی برای اپلیکیشن رو یاد بگیرم؟
با این آموزش api برای هر نوع اپلیکیشنی میتونیم بنویسیم؟
پاسخ:
باسلام: اگر برنامه نویسی اندروید رو بلد هستید نیاز نیست فصل اول رو ملاحظه کنید همون فصل دوم برای شما کفایت میکنه و اگر فصل دوم رو ملاحظه کنید برای هر نوع اپلیکیشن دیگه هم می تونید api بنویسید
مجید
میگه:
سلام
میخواستم بدونم که از برنامه نویسی اندرید برای کنترل ربات میشه استفاده کرد
یعنی از یک گوشی به عنوان مغز یک ربات استفاده کنیم .
متشکر
پاسخ:
باسلام: در برنامه نویسی هیچ کاری نشد نداره بله قطعاً میشه چنین برنامه ای رو پیاده سازی کرد
میلاد
میگه:
سلام استاد می خواستم بپرسم آیا در این دوره در قسمت وب هنگامی که می خواهید اطلاعات را به طور مثال لیست بلیط های هواپیما را را آیا به صورت جیسون برمی گردونید
مثل سایت علی بابا که انی لیست بلیط ها به روز می شه
آیا ارتباط با سرور را شما
با این موارد برقرار می کنید ؟
ajax - restful api - CURL
پاسخ:
سلام: بله هر اتفاقی که سمت سرور بیفته بلافاصله دیتاهاش ارسال میشه به سمت کلاینت و کاربر در مرور گر خودش می بینه و بله دیتاها به صورت جیسون بر می گرده و در مورد سوال دوم هم به اطلاعتون می رسونم برای ارتباط با سرور همه این موارد رو اعم از
restful api و CURL رو به طور کامل شرح خواهیم داد
میلاد
میگه:
سلام استاد میر محمدی من کدام قسمت خریداری کنم که هم درباره ساخت یک API از سایت ساخته شده است به طور مثال از سایت دیجی کالا ساختیم می خواهیم API اون سایت را هم بسازیم و به کاربران هایمان بدهیم تا ازش استفاده کنند
هم کلاینت و سرور و ساخت توکن برای امنیت API
هم ساخت API با PHPMVC که به کاربران PHPMVC کار بدهم
و هم
هم ساخت API با PHP بدون معماری که به کاربران PHP کار بدهم
استاد میرمحمدی لطفا مرا راهنمایی نمایید
پاسخ:
سلام: همه این موارد رو ما در آموزشمون داریم دوست عزیز و فعلاً داریم نحوه نوشتن Api برای اپلیکیشن های موبایلی رو شرح میدیم و در ادامه به همه این مواردی که شما فرمودید خواهیم پرداخت و شما باید فصل های 4 و 5 رو تهیه بفرمایید
میلاد
میگه:
سلام وقتتون بخیر استاد آیا این دوره در قسمت پروژه موبایلی زبان برنامه نویس شده اش با زبان برنامه نویسی کاتلین اندروید و معماری mvvm در کاتلین می باشد
پاسخ:
باسلام: با ide ایکلیپس app موبایل رو پیاده سازی کردیم و این اپ رو خودمون در این دوره نوشتیم و از پروژه آماده به هیچ عنوان استفاده نکردیم لذا این یک دوره همه کاره هست در این دوره شما هم به برنامه نویسی موبایل مسلط میشید و هم وب
ارسلان
میگه:
سلام میخواستم بدونم پروژه وب و اندروید رستوران چند قسمت هست و کی تمام میشود؟؟؟؟؟؟ممنون
پاسخ:
سلام: احتمالا صد قسمت اول مربوط به پروژه رستوران هست
bardia
میگه:
سلام وقت بخیر. این دوره کی تکمیل میشه؟
پاسخ:
سلام: تایم دقیق نمی تونم بگم هفته ای 5 بخش به مجموعه اضافه میشه و فکر کنم حدودای 200 قسمت بشه این دوره
احسان
میگه:
با سلام خدمت استاد گرامی
این درس شما فقط مربوط به برنامه های اندرویدی هست؟میخوام ببینم برای اتصال وب و سایت هایی که با ASP.NET CORE نوشته شده اند،ما از API استفاده می کنیم یا زبان دیگه ای؟
پاسخ:
سلام: ببین دوست عزیز API نویسی یک فن عمومی هست و در انحصار زبان خاصی قرار نداره ولی ما در این دوره دو نوع API رو شرح دادیم یکی نوعی که اپلیکیشن اندرویدی رو به سرور یک سایت وصل میکنه و یکی هم نوعی که یک سایت رو به سرور یک سایت دیگه وصل میکنه
seyyed
میگه:
با سلام استاد ، بنده دوره اقای بلاغی رو دیدم و دوره بوت استراپ رو می خوام تهیه کنم ، اما در این دوره که شما پروژه اندروید رستورانی رو آموزش میدید ایا لازم هست که برنامه نویسی اندروید هم بلد باشیم یا خیر؟ درخواست دیگه ای داشتم اینکه باتوجه به اینکه این آموزش API در سطح وب به زبان فارسی به هیچ وجه وجود ندارد ، تعداد پروژه های بیشتری رو لطفا اموزش بدید که تمام جوانب بررسی شود و در مورد تعداد جلسات اموزش و قیمت دوره اهمیتی ندهید. با تشکر
پاسخ:
سلام:بله باید اندروید رو حتما بلد باشید بخاطر همین مجبورم فقط در 35 قسمت اول این دوره مبانی اندروید درس بدم .تا وقتی وارد پروژه شدیم شما دچار مشکل نشید بخاطر همین اگر اندروید بلد نیستید حتماً حوصله کنید و این35 بخش اول رو ملاحظه بفرمایید و از بابت پروژه نگران نباشید انقدر با هم تمرین می کنیم که در پایان این دوره فول فول میشید
حمیدرضا بمانی
میگه:
سلام و عرض ادب
آیا اگر هزینهی پکیجی که برای دوره های تازه راه افتاده مثل همین api نویسی که با تخفیف ۳۹تومن شده، را پرداخت کنیم، در آینده و بعد تکمیل دوره هزینه اضافی که نباید پرداخت کنیم؟ و پشتیبانی این دورهها تا کی هست و از شروع خرید حساب میشه یا از پایان تکمیل شد چند دوره؟
با تشکر
پاسخ:
سلام: لطفاً این مورد رو از پشتیبانی بپرسید بنده اطلاعی ندارم ، پشتیبانی هم همیشگی هست از زمان کلید خوردن دوره تا زمانی که ما زنده ایم و این سایت پا برجاست :))
عباسپور
میگه:
سلام استاد .ممنون از اینکه چنین اموزشی را گذاشتین. میخواستم بگم اگه امکانش هست اتصال این restapiبه برنامه های تحت ویندوز که با سی شارپ نوشته میشه هم بذارید. ممنون
پاسخ:
سلام : اصول یکی هست ما پر کاربردترین نوعش رو گفتیم یعنی اتصال به برنامه موبایل و وب اگر شما این دو مورد رو یادبگیرید اتصال به برنامه های ویندوزی دیگه کاری نداره
morteza
میگه:
سلام استاد ، ببخشید در این دورخ RESTFUL API هم تدریس میشه ؟ فرقش با API در چیه؟ ممنون
پاسخ:
سلام: بله دقیقا ما این مورد رو در این دوره توضیح میدیم.
Rest یک معماری ساخت API هست که از پروتکل Http استفاده می کنه. روال کار اون به صورتی است که یک قالب درخواست (Http Request Structured) به سمت سرور می فرسته و یک قالب پاسخ (Http Response Structured) به سمت کلاینت ارسال می کند.
زمانی که شما در حال ساخت REST API برای یک نرم افزار هستید میشه گفت که شما سرور هستید و زمانی که دارید از یک REST API استفاده می کنید (مثلا زمان ساخت یک اپلیکیشن) میشه گفت که شما کلاینت هستید.
حالا کلاینت میتونه هر وسیله ای که شما ازش برای ارسال درخواست استفاده بکنید نظیر فرم های HTML یا CURL یا نرم افزاهایی نظیر Postman , Device IOS , Android Device.....باشه
برای ارتباط داده ای بین دو نرم افزار ما از زبان مشترک JSON استفاده می کنیم. پس داده ها را در سرور برای پاسخ از فرمت محلی بوسیله تابع به فرمت JSON تبدیل می کنیم (Encode) و همینطور در کلاینت پس از دریافت اون ها رو از فرمت JSON به فرمت محلی تبدیل می کنیم (Decode).
و اصلا دقیقا ما در این آموزش از RESTFUL API استفاده کردیم هم در بخش موبایل و هم در بخش وب
محمدرضا
میگه:
سلام جناب مهندس
ببخشید ممکنه بگید این آموزش حدودا چند قسمت خواهد بود و کی احتمالا تموم میشه؟
سپاسگزارم
پاسخ:
سلام: این دوره خیلی سنگین هست فکر کنم 200 بخش به بالا بشه تعداد جلسات زمان اتمام دوره رو هم از الان نمیشه پیش بینی کرد ولی شش ماه به بالا حتماً میشه