Context.GetExternalFilesDir(String) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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_RINGTONES
android.os.Environment#DIRECTORY_PODCASTS
, android.os.Environment#DIRECTORY_ALARMS
android.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#KITKAT
A 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.