Vivek Kansal Ответов: 1

Как установить путь к загруженному файлу android


         Intent intent = new Intent();
       intent = getIntent();

       contactUri = intent.getData();
Uri src_uri = Uri.parse(contactUri.getPath());
   Uri dst_uri = Uri.parse("file:///mnt/sdcard/download/testing.pdf");
   DownloadManager.Request req = new DownloadManager.Request(src_uri);
   req.setDestinationUri(dst_uri);
   DownloadManager dm = (DownloadManager) getSystemService(DOWNLOAD_SERVICE);
   dm.enqueue(req);

или
dmr.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, fileName);
dmr.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
 dmr.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI | DownloadManager.Request.NETWORK_MOBILE);
 DownloadManager manager = (DownloadManager) mContext.getSystemService(Context.DOWNLOAD_SERVICE);
 manager.enqueue(dmr);


Что я уже пробовал:

я хочу получить путь к загруженному файлу или установить его вручную. Использование вышеприведенного кода внезапно остановит мое приложение. Я также включил разрешения в манифест.

David Crow

"Использование вышеуказанного кода внезапно остановит мое приложение."

- Куда же? Создается ли исключение? Вы прошли через код с помощью отладчика?

1 Ответов

Рейтинг:
1

Member 14897805

Мне кажется, что вы звоните своему менеджеру загрузок не в то место.


Intent intent = new Intent();
       
intent = getIntent();

       
contactUri = intent.getData();
Uri src_uri = Uri.parse(contactUri.getPath()); 
Uri dst_uri = Uri.parse("file:///mnt/sdcard/download/testing.pdf");  
DownloadManager.Request req = new DownloadManager.Request(src_uri);
req.setDestinationUri(dst_uri);
DownloadManager dm = (DownloadManager) getSystemService(DOWNLOAD_SERVICE);
dm.enqueue(req);



попробовать это:
Intent intent = new Intent();
intent = getIntent();

       contactUri = intent.getData();
Uri src_uri = Uri.parse(contactUri.getPath());
   Uri dst_uri = Uri.parse("file:///mnt/sdcard/download/testing.pdf");
DownloadManager dm = (DownloadManager) getSystemService(DOWNLOAD_SERVICE);
DownloadManager.Request req = new DownloadManager.Request(src_uri);
req.setDestinationUri(dst_uri);
dm.enqueue(req);