Escribo un archivo en Environment.DIRECTORY_DOWNLOADS, ¿por qué no puedo verlo a través de la aplicación de descargas?

Escribo (escribo, no descargo, para ser preciso es el volcado de un db de SQLite de mi aplicación) un archivo en el directorio Environment.DIRECTORY_DOWNLOADS.

File path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS); File file = new File(path, "db.csv"); 

Si busco el teléfono con un explorador de archivos, puedo ver correctamente el archivo en el

  /storage/emulated/0/Download 

Directorio, junto con las otras descargas.

Pero si abro la aplicación de descargas no aparece …

¿Qué debo hacer para que el archivo se muestre en la aplicación de descargas también?

La aplicación Descargas sólo muestra las descargas descargadas a través de DownloadManager , no todos los archivos del directorio.

Usted acaba de crear la instancia del archivo como

 File path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS); File file = new File(path, "db.csv"); 

Pero el archivo "db.csv" todavía no se ha creado. utilizar

 file.createNewFile(); 

Para crear el archivo "db.csv" realmente …

Intente establecer la propiedad setVisibleInDownloadsUi. Esto permite que la descarga sea visible en la aplicación Descargas.

Vea Download.Manager

En caso de que alguien se pregunte cómo hacerlo, encontré la respuesta aquí

Para permitir que el sistema muestre su archivo en la aplicación "Descargas", debe notificar explícitamente al DownloadManager que se ha completado una descarga mediante el método addCompletedDownload()

Al usarlo, el sistema permitirá que su aplicación de descarga muestre el archivo que ha creado usted mismo.

Espero que ayude.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.