Condividi tramite


Context.GetExternalFilesDir(String) Metodo

Definizione

Restituisce il percorso assoluto della directory nel dispositivo di archiviazione condiviso/esterno primario in cui l'applicazione può inserire file persistenti di cui è proprietario.

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

Parametri

type
String

Tipo di directory dei 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_RINGTONESandroid.os.Environment#DIRECTORY_PODCASTS, android.os.Environment#DIRECTORY_ALARMSandroid.os.Environment#DIRECTORY_NOTIFICATIONS, android.os.Environment#DIRECTORY_PICTURES, o android.os.Environment#DIRECTORY_MOVIES.

Restituisce

percorso assoluto della directory specifica dell'applicazione. Può restituire null se l'archiviazione condivisa non è attualmente disponibile.

Attributi

Commenti

Restituisce il percorso assoluto della directory nel dispositivo di archiviazione condiviso/esterno primario in cui l'applicazione può inserire file persistenti di cui è proprietario. Questi file sono interni alle applicazioni e in genere non sono visibili all'utente come supporto.

Ciò è simile #getFilesDir() al fatto che questi file verranno eliminati quando l'applicazione viene disinstallata, tuttavia esistono alcune differenze importanti: <l'archiviazione condivisa ul><li>potrebbe non essere sempre disponibile, poiché i supporti rimovibili possono essere rimossi dall'utente. Lo stato del supporto può essere controllato usando 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 l'archiviazione dei dati in questo caso è poco vantaggiosa anziché le directory private restituite da #getFilesDir()e così via.

android.os.Build.VERSION_CODES#KITKATA partire da , non sono necessarie autorizzazioni per leggere o scrivere nel percorso restituito. È sempre accessibile all'app chiamante. Questo vale solo per i percorsi generati per il nome del pacchetto dell'applicazione chiamante. Per accedere ai percorsi appartenenti ad altri pacchetti android.Manifest.permission#WRITE_EXTERNAL_STORAGE e/o android.Manifest.permission#READ_EXTERNAL_STORAGE sono necessari.

Nei dispositivi con più utenti (come descritto da UserManager), ogni utente ha una risorsa di archiviazione condivisa isolata. Le applicazioni hanno accesso solo all'archiviazione condivisa per l'utente in cui sono in esecuzione.

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

Ecco un esempio di codice tipico per modificare un file nell'archiviazione condivisa di un'applicazione:

{

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

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal Android e usato in base ai termini descritti in 2.5 Attribution License Creative Commons 2.5 Attribution License.

Si applica a

Vedi anche