Esempio n. 1
0
            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 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);
        }
Esempio n. 4
0
        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);
            }
        }