항상 사용 가능하며 추가 권한이 필요하지 않습니다. 여기에 있는 파일은 기본적으로 앱에서만 액세스할 수 있습니다. Context 아래의 getFilesDir() 메소드를 통해 앱의 내부 디렉터리를 가져올 수 있고, getCacheDir()을 통해 내부 캐시 디렉터리를 가져올 수 있습니다.
외부 저장소
외부 스토리지 장착으로 인해 이 공간을 항상 사용하지 못할 수도 있습니다. 그러나 점점 더 많은 제조업체에서 사용자가 용량 확장을 위해 SD 카드를 사용하는 것을 허용하지 않고 대신 장치의 저장 공간을 고정합니다. 이러한 저장 공간은 여전히 내부 저장소와 외부 저장소로 구분되지만 이 경우 기본적으로 외부 저장소가 사용됩니다. 항상 사용 가능하며
도 사용할 수 있습니다.
으아악
외부 저장소 마운트 여부를 확인합니다.
Context 아래의 getExternalFilesDir() 메소드를 통해 앱의 외부 디렉터리를 가져올 수 있고, getExternalCacheDir()을 통해 외부 캐시 디렉터리를 가져올 수 있습니다.
이 두 디렉터리는 外置储存空间目录/Android/data/你的App的包名/ 아래에 있습니다. 여기서 읽고 쓰는 데 추가 권한이 필요하지 않습니다(API 18 이상). 앱의 minSdkVersion <= 18인 경우 읽고 쓰는 것이 좋습니다. AndroidManifest.xml에서 이 권한을 추가하세요:
으아악
단, 이 디렉터리 외부의 파일을 읽고 쓰는 경우 런타임 권한이 필요합니다(예를 들어 외부 저장소의 루트 디렉터리에 로그 파일 등을 쓰려는 경우)
많은 앱이나 타사 SDK가 외부 저장소의 루트 디렉터리에 캐시를 읽고 쓰기 때문에 매분마다 휴대전화 외부 저장소의 루트 디렉터리에 있는 온갖 종류의 이상한 디렉터리를 보게 됩니다. SD카드, 정말 답답하죠? 하지만 안드로이드 6.0 이상의 버전이 탑재된 기기의 점유율이 지속적으로 증가함에 따라 이 문제는 점차 해결될 것이라 믿습니다.
안드로이드 애플리케이션 개발 동료 모두가 getExternalFilesDir(), getExternalCacheDir() 방식을 최대한 활용하여 사용자에게 깔끔하고 정돈된 외부 저장소를 제공해주기를 바랍니다.
형님, 틀렸어요.
공식 문서를 확인하실 수 있습니다.
안드로이드 저장 공간은
두 부분으로 나누어져 있습니다.Internal storage
과External storage
내부 저장소
항상 사용 가능하며 추가 권한이 필요하지 않습니다. 여기에 있는 파일은 기본적으로 앱에서만 액세스할 수 있습니다.
Context 아래의
getFilesDir()
메소드를 통해 앱의 내부 디렉터리를 가져올 수 있고,getCacheDir()
을 통해 내부 캐시 디렉터리를 가져올 수 있습니다.외부 저장소
외부 스토리지 장착으로 인해 이 공간을 항상 사용하지 못할 수도 있습니다. 그러나 점점 더 많은 제조업체에서 사용자가 용량 확장을 위해 SD 카드를 사용하는 것을 허용하지 않고 대신 장치의 저장 공간을 고정합니다. 이러한 저장 공간은 여전히 내부 저장소와 외부 저장소로 구분되지만 이 경우 기본적으로 외부 저장소가 사용됩니다. 항상 사용 가능하며
도 사용할 수 있습니다. 으아악외부 저장소 마운트 여부를 확인합니다.
Context 아래의
getExternalFilesDir()
메소드를 통해 앱의 외부 디렉터리를 가져올 수 있고,getExternalCacheDir()
을 통해 외부 캐시 디렉터리를 가져올 수 있습니다.이 두 디렉터리는
으아악外置储存空间目录/Android/data/你的App的包名/
아래에 있습니다. 여기서 읽고 쓰는 데 추가 권한이 필요하지 않습니다(API 18 이상). 앱의minSdkVersion
<= 18인 경우 읽고 쓰는 것이 좋습니다.AndroidManifest.xml
에서 이 권한을 추가하세요:단, 이 디렉터리 외부의 파일을 읽고 쓰는 경우 런타임 권한이 필요합니다(예를 들어 외부 저장소의 루트 디렉터리에 로그 파일 등을 쓰려는 경우)
많은 앱이나 타사 SDK가 외부 저장소의 루트 디렉터리에 캐시를 읽고 쓰기 때문에 매분마다 휴대전화 외부 저장소의 루트 디렉터리에 있는 온갖 종류의 이상한 디렉터리를 보게 됩니다. SD카드, 정말 답답하죠? 하지만 안드로이드 6.0 이상의 버전이 탑재된 기기의 점유율이 지속적으로 증가함에 따라 이 문제는 점차 해결될 것이라 믿습니다.
안드로이드 애플리케이션 개발 동료 모두가
getExternalFilesDir()
,getExternalCacheDir()
방식을 최대한 활용하여 사용자에게 깔끔하고 정돈된 외부 저장소를 제공해주기를 바랍니다.블로그 http://blog.csdn.net/github_3...
를 참고하시면 됩니다.