public void StartDownload(Android.App.DownloadManager downloadManager, string destinationPathName, bool allowedOverMetered, DownloadVisibility notificationVisibility, bool isVisibleInDownloadsUi) { using (var downloadUrl = Uri.Parse(Url)) using (var request = new Android.App.DownloadManager.Request(downloadUrl)) { if (Headers != null) { foreach (var header in Headers) { request.AddRequestHeader(header.Key, header.Value); } } if (destinationPathName != null) { var file = new Java.IO.File(destinationPathName); var uriPathFile = Android.Net.Uri.FromFile(file); request.SetDestinationUri(uriPathFile); //if (file.Exists()) //{ // file.Delete(); //} } request.SetVisibleInDownloadsUi(isVisibleInDownloadsUi); request.SetAllowedOverMetered(allowedOverMetered); request.SetNotificationVisibility(notificationVisibility); Id = downloadManager.Enqueue(request); } }
protected override Java.Lang.Object DoInBackground(params Java.Lang.Object[] @params) { Android.App.DownloadManager dm; uri = Android.Net.Uri.FromFile(new Java.IO.File(Android.OS.Environment.ExternalStorageDirectory + "/Download/xyz.mp4")); string lastSegment = uri.PathSegments.Last(); string struri = uri.ToString(); if (System.IO.File.Exists(struri)) { // string currenturi = uri + lastSegment; return(null); } else { dm = Android.App.DownloadManager.FromContext(context); Android.App.DownloadManager.Request request = new Android.App.DownloadManager.Request(Android.Net.Uri.Parse(path)); request.SetTitle("Task App").SetDescription("Task video"); request.SetVisibleInDownloadsUi(true); request.SetNotificationVisibility(Android.App.DownloadVisibility.VisibleNotifyCompleted); request.SetDestinationUri(uri); var c = dm.Enqueue(request); } return(null); }
public async void Download_Click() { //var destination = Path.Combine( // System.Environment.GetFolderPath( // System.Environment.SpecialFolder.ApplicationData), // "music.mp3"); //await new WebClient().DownloadFileTaskAsync( // new System.Uri(path), // destination); Android.App.DownloadManager dm; uri = Android.Net.Uri.FromFile(new Java.IO.File(Android.OS.Environment.ExternalStorageDirectory + "/Download/xyz.mp4")); string lastSegment = uri.PathSegments.Last(); string struri = uri.ToString(); if (System.IO.File.Exists(struri)) { // string currenturi = uri + lastSegment; return; } else { dm = Android.App.DownloadManager.FromContext(Activity); Android.App.DownloadManager.Request request = new Android.App.DownloadManager.Request(Android.Net.Uri.Parse(path)); request.SetTitle("Task App").SetDescription("Task Audio"); request.SetVisibleInDownloadsUi(true); request.SetNotificationVisibility(Android.App.DownloadVisibility.VisibleNotifyCompleted); request.SetDestinationUri(uri); var c = dm.Enqueue(request); } }
static void Download(Uri uri) { string fileName = Path.GetFileName(uri.LocalPath); Android.App.DownloadManager downloadManager = (Android.App.DownloadManager)Application.Context.GetSystemService("download"); Android.App.DownloadManager.Request request = new Android.App.DownloadManager.Request(Android.Net.Uri.Parse(uri.AbsoluteUri)); //Restrict the types of networks over which this download may proceed. request.SetAllowedNetworkTypes(Android.App.DownloadNetwork.Wifi | Android.App.DownloadNetwork.Mobile); //Set whether this download may proceed over a roaming connection. request.SetAllowedOverRoaming(false); //Set the title of this download, to be displayed in notifications (if enabled). //request.SetTitle(title); request.SetVisibleInDownloadsUi(false); //request.SetNotificationVisibility(DownloadVisibility.Hidden); #if DEBUG request.SetNotificationVisibility(DownloadVisibility.Visible); #else request.SetNotificationVisibility(DownloadVisibility.Hidden); #endif request.SetDestinationInExternalFilesDir(Application.Context, Android.OS.Environment.DirectoryDownloads, fileName); //Enqueue a new download and same the referenceId var id = downloadManager.Enqueue(request); MBDownloadManager.DownloadMonitor(id); }
public void DownloadFile(string uri, string fileName) { var contentUri = Android.Net.Uri.Parse(uri); var request = new Android.App.DownloadManager.Request(contentUri); request.SetDestinationInExternalPublicDir(Android.OS.Environment.DirectoryDownloads, fileName); request.AllowScanningByMediaScanner(); request.SetNotificationVisibility(Android.App.DownloadVisibility.VisibleNotifyCompleted); var downloadManager = (Android.App.DownloadManager)Forms.Context.GetSystemService(Android.Content.Context.DownloadService); downloadManager.Enqueue(request); }
private void Download(string Url, string filename) { Android.Net.Uri contentUri = Android.Net.Uri.Parse(Url); Android.App.DownloadManager.Request r = new Android.App.DownloadManager.Request(contentUri); r.SetDestinationInExternalPublicDir(Android.OS.Environment.DirectoryDownloads, filename); r.AllowScanningByMediaScanner(); r.SetNotificationVisibility(Android.App.DownloadVisibility.VisibleNotifyCompleted); Android.App.DownloadManager dm = (Android.App.DownloadManager)Xamarin.Forms.Forms.Context.GetSystemService(Android.Content.Context.DownloadService); dm.Enqueue(r); var localFolder = Android.OS.Environment.DirectoryDownloads; var MyFilePath = $"file://{localFolder}/{Filename}"; Toast.MakeText(this, MyFilePath, ToastLength.Long).Show(); }
public async Task<bool> Download(string uri, string filename) { string downloadedFolder = "/storage/emulated/0/Download/"; if (App.DownloadsPath != null && !string.IsNullOrEmpty(App.DownloadsPath)) { downloadedFolder = App.DownloadsPath + "/"; } string fileExtenstion = Path.GetExtension(filename); if (fileExtenstion == ".jpg" || fileExtenstion == ".jpeg" || fileExtenstion == ".png") return false; if (System.IO.File.Exists(downloadedFolder + filename)) { string downloadedUri = "file://" + downloadedFolder + filename; Java.IO.File file = new Java.IO.File(new Java.Net.URI( downloadedUri )); Intent videoPlayerActivity = new Intent(Intent.ActionView); videoPlayerActivity.SetDataAndType(Android.Net.Uri.FromFile(file), "video/*"); Activity activity = Forms.Context as Activity; activity.StartActivity(videoPlayerActivity); return true; } App.DownloadID = 0; Android.Net.Uri contentUri = Android.Net.Uri.Parse(uri); Android.App.DownloadManager.Request r = new Android.App.DownloadManager.Request(contentUri); r.SetDestinationInExternalPublicDir(Android.OS.Environment.ExternalStorageDirectory.ToString(), filename); r.AllowScanningByMediaScanner(); r.SetNotificationVisibility(Android.App.DownloadVisibility.VisibleNotifyCompleted); Android.App.DownloadManager dm = (Android.App.DownloadManager)Xamarin.Forms.Forms.Context.GetSystemService(Android.Content.Context.DownloadService); App.DownloadID = dm.Enqueue(r); AndHUD.Shared.Show(MainActivity.GetMainActivity(), "Dowloading Media...", -1, MaskType.Clear, null, () => { dm.Remove(App.DownloadID); }, true, () => { dm.Remove(App.DownloadID); }); return true; }
/// <summary> /// Use DownloadManager of Android to Download. User Can se status on Action Bar /// </summary> /// <param name="uri">Full url to download</param> /// <param name="filename">File to download</param> public void Download(string uri, string filename) { Android.Net.Uri contentUri = Android.Net.Uri.Parse(uri); Android.App.DownloadManager.Request r = new Android.App.DownloadManager.Request(contentUri); r.SetDestinationInExternalPublicDir(Android.OS.Environment.DirectoryDownloads, filename); r.AllowScanningByMediaScanner(); r.SetNotificationVisibility(Android.App.DownloadVisibility.VisibleNotifyCompleted); Android.App.DownloadManager dm = (Android.App.DownloadManager)Xamarin.Forms.Forms.Context.GetSystemService(Android.Content.Context.DownloadService); dm.Enqueue(r); }
public void Download(string uri, string filename) { var contentUri = Android.Net.Uri.Parse(uri); var r = new Android.App.DownloadManager.Request(contentUri); var downloadpath = Android.OS.Environment.GetExternalStoragePublicDirectory(Android.OS.Environment.DirectoryDownloads).AbsolutePath; var file = new File(Path.Combine(downloadpath, filename)); if (file.Exists()) { return; } r.SetDestinationInExternalPublicDir(Android.OS.Environment.DirectoryDownloads, filename); r.AllowScanningByMediaScanner(); r.SetNotificationVisibility(DownloadVisibility.VisibleNotifyCompleted); dm = (Android.App.DownloadManager)Forms.Context.GetSystemService(Context.DownloadService); _fileId = dm.Enqueue(r); }
public void StartDownload(Android.App.DownloadManager downloadManager, string destinationPathName, bool allowedOverMetered) { using (var downloadUrl = Uri.Parse(Url)) using (var request = new Android.App.DownloadManager.Request(downloadUrl)) { if (Headers != null) { foreach (var header in Headers) { request.AddRequestHeader(header.Key, header.Value); } } if (destinationPathName != null) { request.SetDestinationUri(Uri.FromFile(new Java.IO.File(destinationPathName))); } request.SetAllowedOverMetered(allowedOverMetered); Id = downloadManager.Enqueue(request); } }
static long Download(Uri uri, string filename, string title, IDownloadUpdated2 notify) { Android.App.DownloadManager downloadManager = (Android.App.DownloadManager)Application.Context.GetSystemService("download"); Android.App.DownloadManager.Request request = new Android.App.DownloadManager.Request(Android.Net.Uri.Parse(uri.AbsoluteUri)); //Restrict the types of networks over which this download may proceed. request.SetAllowedNetworkTypes(Android.App.DownloadNetwork.Wifi | Android.App.DownloadNetwork.Mobile); //Set whether this download may proceed over a roaming connection. request.SetAllowedOverRoaming(false); //Set the title of this download, to be displayed in notifications (if enabled). request.SetTitle(title); request.SetVisibleInDownloadsUi(false); //request.SetNotificationVisibility(DownloadVisibility.Hidden); #if DEBUG request.SetNotificationVisibility(DownloadVisibility.Visible); #else request.SetNotificationVisibility(DownloadVisibility.Hidden); #endif request.SetDestinationInExternalFilesDir(Application.Context, Android.OS.Environment.DirectoryDownloads, filename); //Enqueue a new download and same the referenceId var id = downloadManager.Enqueue(request); ThreadPool.QueueUserWorkItem(state => { MBDownloadManager2.DownloadMonitor(id); }); /*new Thread(() => * { * MBDownloadManager2.DownloadMonitor(id); * * }).Start();*/ return(id); }
async void Download_Click() { Android.App.DownloadManager dm; uri = Android.Net.Uri.FromFile(new Java.IO.File(Android.OS.Environment.ExternalStorageDirectory + "/Download/xyz.mp4")); string lastSegment = uri.PathSegments.Last(); string struri = uri.ToString(); if (System.IO.File.Exists(struri)) { // string currenturi = uri + lastSegment; return; } else { dm = Android.App.DownloadManager.FromContext(Activity); Android.App.DownloadManager.Request request = new Android.App.DownloadManager.Request(Android.Net.Uri.Parse(path)); request.SetTitle("Task App").SetDescription("Task Audio"); request.SetVisibleInDownloadsUi(true); request.SetNotificationVisibility(Android.App.DownloadVisibility.VisibleNotifyCompleted); request.SetDestinationUri(uri); var c = dm.Enqueue(request); } }