- 论坛徽章:
- 0
|
Public files :这些文件对与用户与其他app来说是public的,当用户卸载我们的app时,这些文件应该保留。例如,那些被我们的app拍摄的图片或者下载的文件。
Private files: 这些文件完全被我们的app所私有,它们应该在app被卸载时删除。尽管由于存储在external storage,那些文件从技术上而言可以被用户与其他app所访问,但实际上那些文件对于其他app没有任何意义。因此,当用户卸载我们的app时,系统会删除其下的private目录。例如,那些被我们的app下载的缓存文件。
getExternalFilesDir() 方法会创建的目录会在app被卸载时被系统删除。如果我们的文件想在app被删除时仍然保留,请使用getExternalStoragePublicDirectory().
getExternalStoragePublicDirectory()- public File getAlbumStorageDir(String albumName) {
- // Get the directory for the user's public pictures directory.
- File file = new File(Environment.getExternalStoragePublicDirectory(
- Environment.DIRECTORY_PICTURES), albumName);
- if (!file.mkdirs()) {
- Log.e(LOG_TAG, "Directory not created");
- }
- return file;
- }
复制代码 getExternalFilesDir()- public File getAlbumStorageDir(Context context, String albumName) {
- // Get the directory for the app's private pictures directory.
- File file = new File(context.getExternalFilesDir(
- Environment.DIRECTORY_PICTURES), albumName);
- if (!file.mkdirs()) {
- Log.e(LOG_TAG, "Directory not created");
- }
- return file;
- }
复制代码 |
|