خانه اندروید

800 ساعت آموزش اختصاصی

بیش از 30 هزار دانشجو

آموزش های پروژه محور

مطالب پیشنهادی حتما مشاهده کنید :

آموزش آپلود ویدیو اندروید upload video android

آموزش آپلود ویدیو اندروید upload video android

دوره آموزش upload video retrofit2

دوره آپلود ویدیو برنامه نویسی اندروید Upload Video

دوره آپلود ویدیو برنامه نویسی اندروید Upload Video

آپلود ویدیو اندروید

سلام خدمت همراهان همیشگی سایت خانه اندروید در خدمت دوستان هستیم با دوره قدرتمند دیگه تحت عنوان آپلود ویدیو در اندروید رو پیاده سازی کرده ایم. و قصد داریم  این آموزش رو با کتابخانه Retrofit2 آموزش دهیم.هم چنین این دوره در آموزش صفر تا صد برنامه نویسی اندروید هم موجود می باشد.

روند کار در دوره آموزشی آپلود ویدیو

با این دوره آموزشی دیگر نگران ارسال ویدیو به سرور نباشید .ما در این دوره آموزش به صورت کامل صفر تا صد نحوه پیاده سازی upload video رو خدمتون آموزش خواهیم داد و ایده خودتون رو در این بستر با این آموزش پیاده سازی کنید.نرم افزار های مختلفی از جمله تلگرام و اینستاگرام و … توانایی ارسال ویدیو رو دارند و شما هم می توانید از جمله افرادی باشین  که در اپلیکیشن خودتون ویدیو upload کنید.

قابلیت های کلیدی دوره آموزشی آپلود ویدیو

1- چطور از بافر استفاده کنید.

2-پیاده سازی و ارسال تیکه تیکه ویدیو یا در قالب بایت به بایت 

3-Stream video

4-دسترسی به حافظه و کپی کردن فایل در حافظه و سپس ارسال به سمت سرور

5-فیلتر کردن فقط ویدیو ها

آموزش آپلود ویدیو اندروید upload video android

مراحل پیاده سازی و اپلود ویدیو

همیشه آپلود کردن ویدیو یکی از مراحل سختی که با این دوره آموزشی به سادگی می توانید هر نوع ویدیو رو به سمت سرور ارسال کنید . پروسه پیچیده که شامل تیکه تیکه کردن ویدیو مورد نظر و هم چنین جمع کردن بابت ها در سمت سرور و در تبدیل به یک ویدیو کامل و قابل پخش . این دوره آموزشی شامل 7 قسمت که مراحل پیاده سازی آپلود ویدیو رو خدمتون آموزش خواهیم داد.

سرفصل های دوره آموزش آپلود ویدیو در برنامه نویسی اندروید :

  • افزودن کتابخانه به اندروید استودیو 
  • پیاده سازی توسط کتابخانه Retrofit2
  • پیاده سازی قسمت Xml برای آپلود ویدیو
  • نمایش Videoview برای انتخاب ویدیو توسط کاربر
  • فیلتر کردن ویدیو انتخابی کاربر
  • تعریف کردن سطح دسترسی به  فایل
  • عملیات بافرینگ
  • نمایش داده توسط intent
  • چک کردن انتخاب درست ویدیو
  • بررسی کردن مقدار null
  • بیصدا کردن ویدیو انتخابی
  • پخش ویدیو انتخابی کاربر
  • بدست آوردن ادرس ویدیو کپی در یک فایل temp
  • تعریف کردن و ایجاد یک فایل موقت و سپس حذف کردن
  • کار با فایل ها
  • کار کردن با ورودی و خروجی فایل ها
  • بستن یک فایل انتخاب کاربر
  • جلوگیر از کرش برنامه در موقع انتخاب ویدیو
  • نام گذاری فایل به وسیله ساعت دیوایس کاربر
  • ارسال بابت به بایت داده  
  • نام گذاری ویدیو مشابه تلگرام
  • خواندن و تعریف کردن استریم ویدیو و بافر
  • دریافت نام فایل توسط getinstance
  • نام گذاری به وسیله 
  • بدست اوردن mimtype video
  • استفاده از try  برای مدیریت درست فایل ها
  • خواندن حافظه 
  • تست مرحله به مرحله
  • تعریف کردن کتابخانه Retofit2
  • پیاده سازی api service رتروفیت
  • پیاده سازی و ارسال داده توسط رتروفیت
  • ارسال داده در قالب body
  • parse کردن فایل body
  • کپی کردن ادرس ویدیو در حافظه و تولید فایل temp
  • استفاده از بافر و تبدیل ویدیو به کیلوبایت
  • پیاده سازی سمت سرور و api کار
  • پیاده سازی فایل Config
  • پیاده سازی آپلود ویدیو سمت سرور
  • ارسال دیتا به سمت سرور 
  • ذخیره آدرس ویدیو در دیتابیس
  • دریافت فایل temp
  • دریافت filename ویدیو
  • ارسال فایل ارسالی کاربر به فولدر up
  • چک کردن و ایجاد فایل temp
  • ذخیره فایل و در نهایت move کردن ویدیو به فولدر
  • پیاده سازی loding
  • و….

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

مدرس دوره : جواد محمدی

تعداد قسمت : 7 قسمت 

وضعیت دوره :  تکمیل شده

خانه اندروید دانلود فیلم آموزشی  لطفا دوره  آموزشی رو هم ببنید برای توضیحات بیشتر :

حجم فیلم آموزشی   حجم فعلی دوره آموزشی : 286  مگابایت

پسورد فایل   پسورد فایل فشرده : homeandroid.ir

خانه اندروید منبع آموزش : خانه اندروید

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

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

صرفا جهت اطمینان : حتما باید تا حدودی با زبان جاوا کار کرده باشین.

نکته : در این دوره آموزشی api php تدریس میشود. 

 آیا دوره فارسی هست : بله توسط سایت خانه اندروید ضبط و فارسی هست.

  آیا فیلم ها با کیفیت hd هستند : بله آموزش ها با کیفیت و فشرده شده  در دسترس دانشجویان قرار داده می شود تا هم حجم کمتر برای دانلود مصرف کنند. 

 آیا سورس کد دوره پس از پایان اموزش در دسترس کاربران قرار می گیرد :  بله آموزش و فایل ها پس از پایان هر جلسه به صورت کامل در دسترس کاربران قرار می گیرد. و پس از پایان دوره هم سورس کد کامل هم در دسترس شماست.

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

  برای زبان برنامه نویسی از چه زبانی استفاده می کنید : java و php

  از چه کتابخانه ای برای ارتباط با سرور استفاده می کنید : Retrofit2

  دوره آموزشی چند قسمت است :   در حال حاضر 7 قسمت در دسترس هست اما اپدیت هایی دریافت خواهد کرد.

 آیا می توانین دوره را به صورت فصل به فصل دریافت کنیم : جواب خیر چون فصل ها به هم متصل هستن و باید دوره را به صورت کامل تهیه کنید.

 آیا فیلم ها واضح هست و من به راحتی می تونم یاد بگیرم : آموزش ها کاملا پروژه محور توضیح داده خواهد شد و شما می توانید به سادگی یاد بگیرن و دوستانی که پیشنیاز ها رو رعایت نکنند ممکنه هست دچار مشکل شوند و به همین خاطر خواهشمندم پیشنیازی ها رو رعایت کنید .پیشنهاد میشه برای بهتر یادگیری آموزش تمامی هوش و فکر خودتون رو برای هر جلسه بزارین و پس از پایان فیلم یکبار دیگر تمرین را آغاز کنید.و حداقل دو بار هر جلسه را مشاهده و بار سوم با مدرس دوره مرحله به مرحله پیش برین. و در نهایت پیشنهاد میشه برای درک و باز شدن پیش زمینه هرفصل را به صورت کاملا مشاهده کنید.

 آین دوره در چه سطحی هست : از سطح مبتدی تا پیشرفته

 ایا دوره آموزش تکمیل شده ست :  بله تکمیل شده.

 پس از پایان این دوره چه چیزی یاد می گیرم : پس از پایان این دوره آموزشی شما مسلط شدین پیاده سازی و ارسال ویدیو به سمت سرور با زبان php و java

تصاویری نهایی پس از پایان دوره 

آموزش آپلود ویدیو اندروید upload video android

آموزش آپلود ویدیو اندروید upload video android

آموزش آپلود ویدیو اندروید upload video android

آموزش آپلود ویدیو اندروید upload video android

آموزش آپلود ویدیو اندروید upload video android

آموزش آپلود ویدیو اندروید upload video android

 

درباره نویسنده

جواد محمدی هستم بنیان‌گذار سایت خانه اندروید در خدمتون هستیم با آموزش و مفاهیم برنامه نویسی اندروید-نزدیک به 10 سال هست در حوزه برنامه نویسی فعالیت می کنم. مسلط به kotlin,java,flutter,php هستم . در خانه اندروید دانستی های خودم را در اختیار تمامی علاقمندان به برنامه نویسی قرار میدم.تشکر از اینکه خانه اندرورید رو دنبال می کنید.

قبل از ارسال دیدگاه

  • قبل از ارسال دیدگاه: لطفا دیدگاه خودتون رو فقط در مورد این مطلب بنویسید.سپاسگزارم.

    دیدگاه های طولانی نادیده گرفته می شوند لذا دیدگاه خودتان را در دو خط خلاصه کنید.

    دیدگاه های که شامل توهین یا متن توهین آمیز اصلا تایید نمی شود.

    به دیدگاه های بی نام و نشان که ایمیل فیک و نام فیک وارد می کنند پاسخ داده نمی شود

56 دیدگاه

  1. رضا گفت:

    سلام خسته نباشین
    بفرمایید با تهیه این آموزش ، میتونم ارسال هر نوع فایل بزرگ رو به سرور انجام بدم ؟

  2. شهاب گفت:

    سلام و عرض ادب،در این اموزش آپلود فیلم با فشرده سازی و رمزنگاری (encrypt) انجام میشه؟ممنون

  3. طیبه حسینی گفت:

    سلام روز بخیر.دوست عزیز بنده روشی که فرمودید رو پیاده کردم و اوکی هست، اما چون حجم فایلهام کمی بالا هست مجبورم progress bar استفاده کنم. سوال اینه که چطوری حجم ارسالی فایل به سرور بدست بیارم که بخوام به درستی progress bar پیاده کنم؟

    • سلام و درود
      نحوه بدست اوردن
      دوست گرامی لازم هست یک interface تعریف کنید و در نهایت callback کنید زمانی که دیتا رو اپلود می کنید یعنی progress value یا عدد اپلود شده فایل رو بدست بیارین.
      مرحله به مرحله

      public class ProgressRequestBody extends RequestBody {
      private File mFile;
      private String mPath;
      private UploadCallbacks mListener;
      private String content_type;

      private static final int DEFAULT_BUFFER_SIZE = 2048;

      public interface UploadCallbacks {
      void onProgressUpdate(int percentage);
      void onError();
      void onFinish();
      }

      public ProgressRequestBody(final File file, String content_type, final UploadCallbacks listener) {
      this.content_type = content_type;
      mFile = file;
      mListener = listener;
      }

      @Override
      public MediaType contentType() {
      return MediaType.parse(content_type+”/*”);
      }

      @Override
      public long contentLength() throws IOException {
      return mFile.length();
      }

      @Override
      public void writeTo(BufferedSink sink) throws IOException {
      long fileLength = mFile.length();
      byte[] buffer = new byte[DEFAULT_BUFFER_SIZE];
      FileInputStream in = new FileInputStream(mFile);
      long uploaded = 0;

      try {
      int read;
      Handler handler = new Handler(Looper.getMainLooper());
      while ((read = in.read(buffer)) != -1) {

      // update progress on UI thread
      handler.post(new ProgressUpdater(uploaded, fileLength));

      uploaded += read;
      sink.write(buffer, 0, read);
      }
      } finally {
      in.close();
      }
      }

      private class ProgressUpdater implements Runnable {
      private long mUploaded;
      private long mTotal;
      public ProgressUpdater(long uploaded, long total) {
      mUploaded = uploaded;
      mTotal = total;
      }

      @Override
      public void run() {
      mListener.onProgressUpdate((int)(100 * mUploaded / mTotal));
      }
      }
      }

      حالا زمانی که با رتروفیت پیاده سازی کردین در بخش کلاس مربوطه باید اینترفیس رو هم فراخوانی کنید.
      @Override
      public void onProgressUpdate(int percentage) {
      // set current progress
      progressBar.setProgress(percentage);
      }

      @Override
      public void onError() {
      // do something on error
      }

      @Override
      public void onFinish() {
      // do something on upload finished,
      progressBar.setProgress(100);
      }

  4. علی گفت:

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

  5. علیرضا گفت:

    واقعا خیلی ممنون که همچین دوره های حرفه ای رو آموزش میدین
    من تهیه کردم

  6. علیرضا ابهری نژاد خلجان گفت:

    سلام . من دوره صفر تا صد رو اندروید را خریداری کردم . اما لینک دانلود کار نمیکنه.

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

  7. علی گفت:

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

    • سلام و درود دوست گرامی
      سرور سایت خانه اندروید لحظاتی آپدیت شد که شاید اون موقع شما درخواست دانلود دادین.
      مجددن بررسی کنید چون طبق بررسی مشکلی در لینک های دانلود مشاهده نشد.
      هم چنین لطفا اگر مشکلتون حل نشد تلگرام اطلاع بدین
      با احترام

  8. مهندس رامین گفت:

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

  9. محمد رضا گفت:

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

  10. مهناز افشاری فر گفت:

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

  11. مینا محمدپور گفت:

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

  12. سارا گفت:

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

  13. میثم حیدری گفت:

    من آموزش خریداری کردم و واریز انجام دادم و لینک برام ارسال شده ولی کار نمیکنه الان باید چکار کنم؟

    • سلام و درود دوست گرامی
      لینک دانلود رو باید در اینترنت دانلود منیجیر قرار بدین تا دانلود بشه لطفا چک کنید چون لینک های دانلود بدون مشکل هستن و در صورتی که مشکل برطرف نشد تگلرام پیام بفرستین.
      با احترام.

  14. حسین محمد پور گفت:

    سلام خیلی عالی بود.

  15. امین امینی گفت:

    باسلام من تو صفحه انتقال رفتم ورمز دوم پویا برام اومد زدم یک دفعه چون نتم 3g بود نتم پرید تو بازگش به صفحه موند بعدشم لینک دانلود برام ارسال نشد ولی فک کنم به احتمال 90 درصد یه رقم از ایمیل اشتباه دادم الان باید چکار کنم

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

  16. سارا گفت:

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

  17. محدثه گفت:

    سلام خیلی ممنونم از سایت خوبتون آموزش عالی بود.

  18. محمد گفت:

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

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

  19. علی گفت:

    سلام یه آموزش درست کنید بعد از انتخاب عکس یا ویدیو اول ذخیره بشه توی دیتابیس room و بعد به سمت سرور ارسال بشه و بعد که ارسال شد از توی room حذف بشه و فقط آدرس ذخیره شدن توی سرور باقی بمونه

  20. محمد گفت:

    سلام
    با توجه به توضیحتون پس دیگه اون دوره 0 تا 100 نیست بلکه یه پکیج ساده هست چون صفر تا صد یه معنی دیگه داره

    • سلام و احترام
      لطفا در تلگرام پیام ارسال کنید.تا بتونیم رضایت شما دوست گرامی رو بدست بیاریم.
      هم چنین طبق درخواست شما سه دوره به سرفصل ها اضافه شد.

      با احترام.

  21. محمد گفت:

    سلام
    این بخش های کوچک مثل این بخش آپلود عکس در دوره صفر تا 100 هست یا باید اینا جداگونه خرید بشه؟
    خیلی آموزش های ریز مثل این دارید

  22. زهرا حمتی گفت:

    سلام اقای مهندس محمدی خیلی ام عالی شرکت گیر داده بود که اپلود ویدیو رو برای اپ بزنم که اصلا هرچی اینترنت رو گشتم چیزی پیدا نکرده ام تا اینکه به سایت شما که می دونستم زودتر تهیه می کرده ام سایتون رو بررسی کرده ام تقریبا همه چیز می خواهم :))

  23. علی صادقی گفت:

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

  24. صادق مهربانی گفت:

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

  25. محمد صادقی گفت:

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

  26. علی حاج محمدی گفت:

    تشکر عالی بود.

  27. هادی گفت:

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

  28. رسول عشراقی گفت:

    لطفا نحوه اپلود عکس رو آموزششو بزارین من با گوگل به این صفحه اومدم