如何在 Android 中隐藏图库中的图像?

How to hide image from Gallery in Android?

我正在从服务器下载图像并将其保存在内部存储器中。但我想从图库中隐藏这些图像。我该怎么做?

我听说用 .DirName 命名文件夹会隐藏图像,但在我的情况下不起作用。 (Phone 未 Root)

public void myDownload(String myURL) {

    DownloadManager.Request request = new DownloadManager.Request(Uri.parse(myURL));
    //request.setTitle("File Download");
    //request.setDescription("Downloading....");

    //request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI);
    request.allowScanningByMediaScanner();
    //request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
    request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_HIDDEN);
    String nameOfFile = URLUtil.guessFileName(myURL, null, MimeTypeMap.getFileExtensionFromUrl(myURL));

    //request.setDestinationInExternalPublicDir(Environment.getExternalStorageDirectory().getPath() + "/KiiTTimeTableData/" + year + "/" + branch + "/" + section + "/", nameOfFile);
    //request.setDestinationInExternalPublicDir("/MyDataFinal/", nameOfFile);
    request.setDestinationInExternalPublicDir("/KiiTTimeTableData/Data/", nameOfFile);

    DownloadManager manager = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);
    manager.enqueue(request);
}

您可以尝试在您的照片文件夹中创建一个文件名 .nomedia(在前缀中包含点)。这将阻止 Android 的媒体扫描器读取您的媒体文件并将它们包含在相册或音乐等应用程序中。

您可以尝试的另一种方法是加密您的文件,请阅读这篇文章:How to encrypt file from SD card using AES in Android?