2013-08-22 14 views
25

Sto cercando di sviluppare un "manager documento"Android: dove vengono salvati i file scaricati?

ho la necessità di accedere ai file scaricati da internet, da Gmail, per altri client di posta, da altre fonti internet ...

lo farei come capire in cui questi file vengono memorizzati esattamente su Android:

1- se c'è una scheda SD

2- se non v'è alcuna scheda SD

in modo che possa mostrarli all'utente nella mia app in qualsiasi momento.

Qualsiasi aiuto molto apprezzato.

+0

Si prega di rivedere la struttura del file system Android in http://www.stevesandroidguide.com/android-files/ – jmozko

risposta

31

La maggior parte dei dispositivi ha una qualche forma di memoria emulata. se supportano le schede SD vengono generalmente montate su /sdcard (o qualche variazione di quel nome) che di solito è collegato a una directory in /storage come /storage/sdcard0 o /storage/0 a volte la memoria emulata è montata su /sdcard e il percorso effettivo è qualcosa di simile a/storage/emulato/legacy. Dovresti essere in grado di usare per ottenere la directory dei download. È meglio usare le chiamate api per ottenere le directory. Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);

Poiché il supporto per i file system e la sdcard varia a seconda dei dispositivi.

vedere domanda simile per ulteriori informazioni how to access downloads folder in android?

Di solito il DownloadManager gestisce download ei file vengono poi accede richiedendo URI del file fromthe download manager che utilizza un file id per arrivare dove era file di posti che di solito essere da qualche parte in sdcard/reale o emulato in quanto le applicazioni in grado di leggere solo i dati provenienti da determinati posti sul filesystem di fuori della loro directory dei dati come lo sdcard

16

nella mia esperienza di tutti i file che ho scaricato da internet,gmail sono memorizzati in

/sdcard/download 

su ics

/sdcard/Download 

È possibile accedervi utilizzando

Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS); 
Problemi correlati