Context.GetExternalFilesDirs(String) メソッド

定義

アプリケーションが所有する永続ファイルを配置できるすべての共有/外部ストレージ デバイス上のアプリケーション固有のディレクトリへの絶対パスを返します。

[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[]

パラメーター

type
String

返すファイル ディレクトリの種類。 ファイル ディレクトリのルート、またはサブディレクトリのnullandroid.os.Environment#DIRECTORY_MUSICandroid.os.Environment#DIRECTORY_PODCASTSandroid.os.Environment#DIRECTORY_RINGTONESandroid.os.Environment#DIRECTORY_ALARMSandroid.os.Environment#DIRECTORY_NOTIFICATIONS、またはandroid.os.Environment#DIRECTORY_PICTURESのいずれかの定数をandroid.os.Environment#DIRECTORY_MOVIESできます。

返品

File[]

アプリケーション固有のディレクトリへの絶対パス。 その共有ストレージが現在使用できない場合、一部の個別のパスが null される場合があります。 返される最初のパスは、 #getExternalFilesDir(String)と同じです。

属性

注釈

アプリケーションが所有する永続ファイルを配置できるすべての共有/外部ストレージ デバイス上のアプリケーション固有のディレクトリへの絶対パスを返します。 これらのファイルはアプリケーションの内部にあり、通常はメディアとしてユーザーに表示されません。

これは、アプリケーションのアンインストール時にこれらのファイルが削除されるという #getFilesDir() に似ていますが、重要な違いがいくつかあります。 <ul><li>ユーザーがリムーバブル メディアを取り出すことができるため、共有ストレージは常に使用できない場合があります。 メディアの状態は、 Environment#getExternalStorageState(File)を使用して確認できます。 <li>これらのファイルにはセキュリティは適用されません。 たとえば、 android.Manifest.permission#WRITE_EXTERNAL_STORAGE を保持しているアプリケーションは、これらのファイルに書き込むことができます。 </ul>

共有ストレージ デバイスがエミュレートされた場合 ( Environment#isExternalStorageEmulated(File)によって決定される)、その内容はプライベート ユーザー データ パーティションによってサポートされます。つまり、 #getFilesDir()によって返されるプライベート ディレクトリではなく、ここにデータを格納する利点はほとんどありません。

ここで返される共有ストレージ デバイスは、保護カバーの下の物理メディア スロットなど、デバイスの安定した部分と見なされます。 返されるパスには、ハンドヘルド デバイスに接続されている USB フラッシュ ドライブなどの一時的なデバイスは含まれません。

アプリケーションは、返されたデバイスの一部または全部にデータを格納できます。 たとえば、アプリでは、 StatFsで測定された、使用可能な領域が最も多いデバイスに大きなファイルを格納することを選択できます。

呼び出し元のアプリが、返されたパスの下のファイルを読み書きするために、追加のアクセス許可は必要ありません。 セカンダリ外部ストレージ デバイスでは、これらのパス以外の書き込みアクセスは使用できません。

異なる共有ストレージ メディアが挿入されると、返されるパスが時間の経過と同時に変化する可能性があるため、相対パスのみを保持する必要があります。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

適用対象

こちらもご覧ください