как показать изображение после сохранения изображения на SD-карту на Android - PullRequest
0 голосов
/ 26 мая 2018

В моем приложении я хочу загрузить изображение с сервера и сохранить его на SD-карте .
Я пишу код ниже и могу загружать и хранить на SD-карте.
Но после сохранения изображения вSD-карта не отображается в Галерее!

Мои коды:

private void createDirectoryAndSaveFile(Bitmap imageToSave, String fileName) {
        File direct = new File(Environment.getExternalStorageDirectory() + "/MyApp/Wallpaper");

        if (!direct.exists()) {
            File wallpaperDirectory = new File("/sdcard/MyApp/Wallpaper/");
            wallpaperDirectory.mkdirs();
        }

        File file = new File(new File("/sdcard/MyApp/Wallpaper/"), fileName);
        if (file.exists()) {
            file.delete();
        }
        try {
            FileOutputStream out = new FileOutputStream(file);
            imageToSave.compress(Bitmap.CompressFormat.JPEG, 100, out);
            out.flush();
            out.close();
            showReturnMessage("Message","Successfully saved :) ",R.color.alertSuccess);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

Как это возможно?

1 Ответ

0 голосов
/ 26 мая 2018

Вам необходимо обновлять свою галерею каждый раз, когда вы сохраняете изображение.Попробуйте вызвать этот метод после сохранения:

static public void notifyMediaScannerService(Context context, String path) {
    MediaScannerConnection.scanFile(context,
            new String[] { path }, null,
            new MediaScannerConnection.OnScanCompletedListener() {
        public void onScanCompleted(String path, Uri uri) {
            Log.i("ExternalStorage", "Scanned " + path + ":");
            Log.i("ExternalStorage", "-> uri=" + uri);
        }
    });
}
...