3

我正在创建两个文件夹来将我的应用程序的图像存储在 SD 卡中。但是这些文件夹在文件管理器中可见。我想阻止从外部访问我的文件夹。我正在将图像保存在这两个文件夹中。请像这样保存帮帮我。

File sdcard = Environment.getExternalStorageDirectory();
File pictureDir = new File(sdcard, "Image_dir");
if (!pictureDir.exists()) {
    pictureDir.mkdirs();
    }

// saving the image file in the  folder Image_dir
File f = null;
f = new File(pictureDir, file_name);
FileOutputStream fos = new FileOutputStream(f.getAbsolutePath());
Bitmap image;
image.compress(Bitmap.CompressFormat.PNG, 100, fos);
fos.flush();
fos.close();
4

2 回答 2

0

通常添加一个 . 在文件夹名称前面,这会将其从媒体扫描仪中排除。但是用文件管理器还是可以找到的。

于 2012-07-02T06:32:21.647 回答
0

如果您正在使用 Api Level-8,那么我建议使用getExternalFilesDir(字符串类型)

而不是Environment.getExternalStorageDirectory()因为使用它有两个好处

  • 当您的应用程序被用户卸载时,所有图像和数据将被自动删除
  • 图像在媒体应用程序中不可见(在图库中)。
于 2012-07-02T07:02:24.837 回答