Environment.ExternalStorageDirectory 속성

정의

기본 공유/외부 스토리지 디렉터리를 반환합니다.

public static Java.IO.File? ExternalStorageDirectory { [Android.Runtime.Register("getExternalStorageDirectory", "()Ljava/io/File;", "")] get; }
[<get: Android.Runtime.Register("getExternalStorageDirectory", "()Ljava/io/File;", "")>]
static member ExternalStorageDirectory : Java.IO.File

속성 값

특성

설명

기본 공유/외부 스토리지 디렉터리를 반환합니다. 이 디렉터리는 컴퓨터의 사용자가 탑재했거나 디바이스에서 제거되었거나 다른 문제가 발생한 경우 현재 액세스할 수 없을 수 있습니다. 를 사용하여 현재 상태를 #getExternalStorageState()확인할 수 있습니다.

<em>참고: 여기서는 "external"라는 단어로 혼동하지 마세요. 이 디렉터리를 미디어/공유 스토리지로 더 잘 생각할 수 있습니다. 비교적 많은 양의 데이터를 보유할 수 있고 모든 애플리케이션에서 공유되는 파일 시스템입니다(권한을 적용하지 않음). 일반적으로 SD 카드 보호된 내부 스토리지와 구별되고 컴퓨터의 파일 시스템으로 탑재할 수 있는 디바이스에서 기본 제공 스토리지로 구현될 수도 있습니다.</그들>

여러 사용자가 있는 디바이스에서(설명한 UserManager대로) 각 사용자에게는 고유한 격리된 공유 스토리지가 있습니다. 애플리케이션은 실행 중인 사용자의 공유 스토리지에만 액세스할 수 있습니다.

여러 공유/외부 스토리지 디렉터리가 있는 디바이스에서 이 디렉터리 는 사용자가 상호 작용할 기본 스토리지를 나타냅니다. 보조 스토리지에 대한 액세스는 , Context#getExternalCacheDirs()Context#getExternalMediaDirs()을 통해 Context#getExternalFilesDirs(String)사용할 수 있습니다.

애플리케이션은 사용자의 루트 네임스페이스를 오염시키지 않도록 이 최상위 디렉터리를 직접 사용하면 안 됩니다. 애플리케이션에 대한 프라이빗 파일은 에서 반환 android.content.Context#getExternalFilesDir Context.getExternalFilesDir된 디렉터리에 배치해야 하며, 애플리케이션이 제거되면 시스템에서 삭제를 처리합니다. 다른 공유 파일은 에서 반환 #getExternalStoragePublicDirectory하는 디렉터리 중 하나에 배치해야 합니다.

이 경로에 쓰려면 권한이 필요하며 android.Manifest.permission#WRITE_EXTERNAL_STORAGE , 부터 android.os.Build.VERSION_CODES#KITKAT읽기 액세스 권한은 쓰기 권한을 보유하는 경우 자동으로 부여되는 권한이 필요합니다 android.Manifest.permission#READ_EXTERNAL_STORAGE .

부터 애플리케이션이 android.os.Build.VERSION_CODES#KITKAT내부 데이터만 저장해야 하는 경우 읽기 또는 쓰기 권한이 필요 없는 , Context#getExternalCacheDir()또는 Context#getExternalMediaDirs()를 사용하는 Context#getExternalFilesDir(String)것이 좋습니다.

이 경로는 플랫폼 버전 간에 변경되어 애플리케이션이 상대 경로만 유지해야 합니다.

다음은 외부 스토리지의 상태를 모니터링하는 일반적인 코드의 예입니다.

{

에 대한 Java 설명서입니다 android.os.Environment.getExternalStorageDirectory().

이 페이지의 일부는 만들고 공유하며 에 설명된 조건에 따라 사용되는 작업을 기반으로 수정됩니다.

적용 대상

추가 정보