Condividi tramite


Context.GetExternalFilesDirs(String) Metodo

Definizione

Restituisce percorsi assoluti alle directory specifiche dell'applicazione in tutti i dispositivi di archiviazione condivisi/esterni in cui l'applicazione può inserire file persistenti di cui è proprietario.

[Android.Runtime.Register("getExternalFilesDirs", "(Ljava/lang/String;)[Ljava/io/File;", "GetGetExternalFilesDirs_Ljava_lang_String_Handler")]
public abstract Java.IO.File[]? GetExternalFilesDirs (string? type);
[<Android.Runtime.Register("getExternalFilesDirs", "(Ljava/lang/String;)[Ljava/io/File;", "GetGetExternalFilesDirs_Ljava_lang_String_Handler")>]
abstract member GetExternalFilesDirs : string -> Java.IO.File[]

Parametri

type
String

Tipo di directory di file da restituire. Può essere null per la radice della directory dei file o una delle costanti seguenti per una sottodirectory: android.os.Environment#DIRECTORY_MUSIC, android.os.Environment#DIRECTORY_PODCASTS, android.os.Environment#DIRECTORY_RINGTONESandroid.os.Environment#DIRECTORY_ALARMS, android.os.Environment#DIRECTORY_NOTIFICATIONS, , android.os.Environment#DIRECTORY_PICTURESo android.os.Environment#DIRECTORY_MOVIES.

Restituisce

File[]

percorsi assoluti alle directory specifiche dell'applicazione. Alcuni singoli percorsi potrebbero essere null se l'archiviazione condivisa non è attualmente disponibile. Il primo percorso restituito è uguale #getExternalFilesDir(String)a .

Attributi

Commenti

Restituisce percorsi assoluti alle directory specifiche dell'applicazione in tutti i dispositivi di archiviazione condivisi/esterni in cui l'applicazione può inserire file persistenti di cui è proprietario. Questi file sono interni all'applicazione e in genere non sono visibili all'utente come supporto.

Questo è simile #getFilesDir() al fatto che questi file verranno eliminati quando l'applicazione viene disinstallata, tuttavia esistono alcune differenze importanti: <ul><li>Shared storage potrebbe non essere sempre disponibile, perché i supporti rimovibili possono essere inseriti dall'utente. È possibile controllare lo stato del supporto tramite Environment#getExternalStorageState(File). <li>Non esiste alcuna sicurezza applicata con questi file. Ad esempio, qualsiasi applicazione che contiene android.Manifest.permission#WRITE_EXTERNAL_STORAGE può scrivere in questi file. </ul>

Se un dispositivo di archiviazione condiviso viene emulato (come determinato da Environment#isExternalStorageEmulated(File)), il contenuto è supportato da una partizione di dati utente privata, il che significa che non c'è alcun vantaggio nell'archiviazione dei dati qui anziché nelle directory private restituite da #getFilesDir()e così via.

I dispositivi di archiviazione condivisa restituiti qui sono considerati una parte stabile del dispositivo, inclusi gli slot di supporti fisici sotto una copertura protettiva. I percorsi restituiti non includono dispositivi temporanei, ad esempio le unità flash USB connesse ai dispositivi palmari.

Un'applicazione può archiviare i dati in uno o tutti i dispositivi restituiti. Ad esempio, un'app può scegliere di archiviare file di grandi dimensioni nel dispositivo con lo spazio più disponibile, come misurato da StatFs.

Non sono necessarie autorizzazioni aggiuntive per consentire all'app chiamante di leggere o scrivere file nel percorso restituito. L'accesso in scrittura all'esterno di questi percorsi nei dispositivi di archiviazione esterni secondari non è disponibile.

Il percorso restituito può cambiare nel tempo se vengono inseriti supporti di archiviazione condivisi diversi, quindi devono essere mantenuti solo i percorsi relativi.

Documentazione java per android.content.Context.getExternalFilesDirs(java.lang.String).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

Vedi anche