سلام خدمت کاربران عزیز کدآموز
یه مدت درگیر پروژه بودم عذرخواهی میکنم نتونستم مطالب آموزشی بزارم. انشالله با آموزش های جدید جبران میکنم??.
بیشتر برنامه نویس های تازه کار اندروید با دانلود فایل در اندروید مشکل دارند یا نمیتونند به درستی این عمل رو پیاده سازی کنند.به همین خاطر یک آموزش ساده بر اساس یکی از کتابخانه های خوب تهیه کردم تا بتونید بدون دردسر فایل های مختلف رو با برنامه نویسی دانلود کنید.
پیاده سازی قدم به قدم :
- اول از همه باید اجازه دسترسی برای اینترنت و نوشتن رو حافظه رو در Manifest اضافه کنید :12<uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
- در مرحله بعد باید کتابخانه Thin Download Manager رو کامپایل کنید تا به پروژه اضافه شود :1compile 'com.mani:ThinDownloadManager:1.3.0'
- خب حالا باید یک سری کد برای دانلود به اکتیویتی دلخواهتون اضافه کنید :البته یک سری کد نوتیفیکیشن بهش اضافه کردم که درصد و پروسه دانلود رو نمایش میده. میتونید حذفش کنید اگر دوست نداشتید.12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364NotificationManager mNotifyManager;NotificationCompat.Builder mBuilder;///////////// ایجاد نوتیفیکیشن دانلودmNotifyManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);mBuilder = new NotificationCompat.Builder(Activity.this);mBuilder.setContentTitle("دانلود فایل - کدآموز").setContentText("درحال دانلود...").setSmallIcon(R.drawable.app_logo).setProgress(100, , false);mBuilder.setOngoing(true);mNotifyManager.notify(1, mBuilder.build());/////////////// کد های کتابخانه دانلود فایلThinDownloadManager downloadManager = new ThinDownloadManager();String URI = "http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4"; // لینک فایلString saveFile = "/video.mp4"; // اسم فایل دانلودیUri downloadUri = Uri.parse(URL);///////// محل ذخیرهUri destinationUri = Uri.parse(this.getExternalCacheDir().toString() + saveFile);DownloadRequest downloadRequest = new DownloadRequest(downloadUri)// .addCustomHeader("Auth-Token", "YourTokenApiKey").setRetryPolicy(new DefaultRetryPolicy()).setDestinationURI(destinationUri).setPriority(DownloadRequest.Priority.HIGH).setDownloadContext(getApplicationContext())//Optional.setDownloadListener(new DownloadStatusListener() {@Overridepublic void onDownloadComplete(int id) {//// اگر دانلود تمام شد...Intent notificationIntent = new Intent(Activity.this, NextActivity.class);PendingIntent contentIntent = PendingIntent.getActivity(NextActivity.this, id, notificationIntent,PendingIntent.FLAG_CANCEL_CURRENT);mBuilder.setContentTitle("دانلود فایل - کدآموز").setContentText("دانلود کامل شد.").setSmallIcon(R.drawable.app_logo).setContentIntent(contentIntent);// Issues the notificationmNotifyManager.notify(1, mBuilder.build());}@Overridepublic void onDownloadFailed(int id, int errorCode, String errorMessage) {/// اگر دانلود ناموفق بود ...}@Overridepublic void onProgress(int id, long totalBytes, long downlaodedBytes, int progress) {// Issues the notification///// آپدیت کردن نوتیفیکیشن بار ...mBuilder.setProgress(100, progress, false).setContentText(progress + "%");mNotifyManager.notify(ID, mBuilder.build());}});downloadManager.add(downloadRequest);
امیدوارم این آموزش بهتون کمک کنه.اگر مطلب رو دوست داشتید برای حمایت از سایت این صفحه رو در شبکه های اجتماعی اشتراک بزارید.♥♥☺
اگر سوال یا مشکلی دارید در قسمت دیدگاه ها بپرسید.
یاعلی
سلام، حسین اسعدی هستم طراح و برنامه نویس وب، 3 سالی هست با وردپرس اشنا هستم و این آشنایی کماکان داره بیشتر میشه! امیدوارم در کدآموز بتونم مطالب و مقالات مفیدی براتون قرار بدم! اگر سوالی دارید میتونید به تلگرامم پیام بدید @hossin_asaadi ????
عالی بود ممنون
عالی