앱 내부 메모리 (Internal Memory)
- 캐시 폴더 : this.getCacheDir()
4.0.3 버전 경로 : /data/data/패키지명/cache/파일명
- 파일 폴더 : this.getFilesDir()
4.0.3 버전 경로 : /data/data/패키지명/files/파일명
- 직접 만드는 폴더 : this.getDir("폴더명", mode) -> mode에는 0 또는 MODE_PRIVATE 입력
4.0.3 버전 경로 : /data/data/패키지명/app_폴더명/파일명
-> https://developer.android.com/reference/android/content/Context.html#getDir(java.lang.String, int)
createTempFile(String prefix, String suffix, File directory)
prefix 는 3글자 이상, suffix는 확장자개념(null일 경우 : ".tmp"),
directory는 저장할 폴더(null일 경우 : 눈으로 확인 가능.
4.0.3 버전 경로 : /sdcard/파일명
)
prefix : test, suffix : null = 파일 명 : test(...).tmp
prefix : test, suffix : .txt = 파일 명 : test(...).txt
prefix : test, suffix : txt = 파일 명 : test(...)txt
앱 내부 파일 만들기
1. File file = File.createTempFile("test",".txt", this.getDir("폴더명", 0));
-> 만들어지는 경로 : 4.0.3 버전 경로 : /data/data/패키지명/app_폴더명/test(temp번호).txt -> (test1837506.txt)
2. File path = this.getDir("폴더명", 0);
File file = new File(path, "test.txt");
-> 만들어지는 경로 : 4.0.3 버전 경로 : /data/data/패키지명/app_폴더명/파일명
FileOutputStream fos = new FileOutputStream(파일);
앱 외부 메모리 (External Memory)
4.0.3 : getExternalFilesDirs , listView.setNestedScrollingEnabled(false); -> NoSuchMethodError
Environment.getExternalStorageDirectory().getAbsolutePath(); -> /mnt/sdcard
Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).getAbsolutePath(); -> /mnt/sdcard/Download
7.0 : getExternalFilesDirs(ContactsContract.Directory.PACKAGE_NAME);
-> [0] : /storage/emulated/0/Android/data/패키지명/files/packageName
-> [1] : /storage/외장sdcard/Android/data/패키지명/files/packageName
Environment.getExternalStorageDirectory().getAbsolutePath(); -> /storage/emulated/0
Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).getAbsolutePath(); -> /storage/emulated/0/Download
getExternalFilesDir() 앱을 삭제하면 이 메소드를 사용하여 저장한 모든 파일은 사라짐. 이유는 그 패키지를 가진 폴더가 사라짐.
'Android Studio' 카테고리의 다른 글
[안드로이드] android jsonArray를 string으로 뽑아내는 방법 (0) | 2017.04.21 |
---|---|
[안드로이드] android eclipse sdk 23 httpget 오류 (0) | 2017.04.19 |
[안드로이드] android 버전 (0) | 2017.04.12 |
[안드로이드] android switch constant expression required 오류 (0) | 2017.04.12 |
[안드로이드] android 외장 sdcard (0) | 2017.04.10 |