공식 SDK 주소 https://developer.android.com/reference/android/os/Environment.html
External 폴더 경로를 얻기 위해 Enviroment를 사용한 방법이다.
위 sdk문서를 보면 다양한 메소드들이 제공된다.
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Return the user data directory. | |||||||||||
Return the download/cache content directory. | |||||||||||
Return the primary shared/external storage directory. | |||||||||||
Get a top-level shared/external storage directory for placing files of a particular type. | |||||||||||
Returns the current state of the shared/external storage media at the given path. | |||||||||||
Returns the current state of the primary shared/external storage media. | |||||||||||
Return root of the "system" partition holding the core Android OS. | |||||||||||
This method was deprecated in API level 21. use getExternalStorageState(File) | |||||||||||
Returns whether the primary shared/external storage media is emulated. | |||||||||||
Returns whether the shared/external storage media at the given path is emulated. | |||||||||||
Returns whether the shared/external storage media at the given path is physically removable. | |||||||||||
Returns whether the primary shared/external storage media is physically removable. |
안드로이드에서 제공하는 기본 폴더(도큐먼트, 음악, 알림, 벨소리 등)를 접근하기 위해서는 Enviroment의 type을 설정한다.
예는 아래와 같다.
getExternalStoragePublicDirectory(Enviroment.type)
타입의 종류는 아래와 같다.
public static String DIRECTORY_MUSIC = "Music";
public static String DIRECTORY_PODCASTS = "Podcasts";
public static String DIRECTORY_RINGTONES = "Ringtones";
public static String DIRECTORY_ALARMS = "Alarms";
public static String DIRECTORY_NOTIFICATIONS = "Notifications";
public static String DIRECTORY_PICTURES = "Pictures";
public static String DIRECTORY_MOVIES = "Movies";
public static String DIRECTORY_DOWNLOADS = "Download";
public static String DIRECTORY_DCIM = "DCIM";
public static String DIRECTORY_DOCUMENTS = "Documents";
그 외 어플리케이션 고유 저장소를 접근하기 위한 방법은
File Context.getExternalFilesDir(String type)
애플리케이션 고유 영역의 데이터 유형에 따른 외부 저장소의 저장 공간 경로를 반환합니다. 인자로 디렉터리의 유형을 넘겨줍니다.
인자명 | 경로 |
Environment.DIRECTORY_ALARMS | /mnt/sdcard/Android/data/[패키지 이름]/files/Alarms |
Environment.DIRECTORY_DCIM | /mnt/sdcard/Android/data/[패키지 이름]/files/DCIM |
Environment.DIRECTORY_DOWNLOADS | /mnt/sdcard/Android/data/[패키지 이름]/files/Downloads |
Environment.DIRECTORY_MUSIC | /mnt/sdcard/Android/data/[패키지 이름]/files/Music |
Environment.DIRECTORY_MOVIES | /mnt/sdcard/Android/data/[패키지 이름]/files/Movies |
Environment.DIRECTORY_NOTIFICATIONS | /mnt/sdcard/Android/data/[패키지 이름]/files/Notifications |
Environment.DIRECTORY_PICTURES | /mnt/sdcard/Android/data/[패키지 이름]/files/Pictures |
Environment.DIRECTORY_PODCASTS | /mnt/sdcard/Android/data/[패키지 이름]/files/Podcasts |
null | /mnt/sdcard/Android/data/[패키지 이름]/files |
이며, 필요했던게 공용 영역 접근이라 이 부분에 대한 글은 아래 주소 내용을 복사했다.
댓글