2013-05-25 18 views
7

Sto usando il Download Manager e quando usoAndroid Download Manager setDestinationInExternalFilesDir

setDestinationInExternalFilesDir(this, Environment.DIRECTORY_DOWNLOADS, "example.ext"); 

i file vengono scaricati ad Android com.example.app/file della cartella/data// Download.

Quando provo

setDestinationInExternalPublicDir("/folder", "example.ext"); 

ottengo: IllegalStateException: Cannot create directory mnt/sdcard/folder. Ho impostato anche il permesso WRITE_EXTERNAL_STORAGE.

Cosa sto sbagliando?

risposta

0

Perché non si utilizza absolute percorso per ExternalFileDir

File sdCard = Environment.getExternalStorageDirectory(); 
String folder = sdCard.getAbsolutePath() + "/YourFolder" ; 
File dir = new File(folder); 
if (!dir.exists()) { 
if (dir.mkdirs()) { 
    Log.i(Tag,"Directory Created"); 
    } 
} 

Credo che questo potrebbe anche funzionare per voi.

+0

Ho provato quanto segue. downloadRequest.setDestinationInExternalFilesDir (v.getContext(), cartella, down.getTitle() + ". Epub")); Ma il file viene scaricato nel file : ///mnt/sdcard/Android/data/com.example.app/files/*folder-path* –

+0

L'ho risolto temporaneamente spostando il file dopo aver scaricato da Android/dati/com.example.app/file nella directory che ho richiesto. –

0

uso request.setDestinationInExternalPublicDir("/folder", "FileName.extention");

questo ha funzionato per me ..

Problemi correlati