Yo intente guardar la imagen en WathsappIMG pero cuando voy a la galería de imágenes de android no veo la imagen y la imagen en el directorio puede ser visto desde ES File Explorer

OutputStream output;
       //Find the SD Card path
        File filepath = Environment.getExternalStorageDirectory();

      //Create a new folder in SD Card
     File dir = new File(filepath.getAbsolutePath()
              + "/WhatSappIMG/");
        dir.mkdirs(); 

     //Retrieve the image from the res folder
        BitmapDrawable drawable = (BitmapDrawable) principal.getDrawable();
        Bitmap bitmap1 = drawable.getBitmap();

        //Create a name for the saved image
        File file = new File(dir, "Wallpaper.jpg" );

        try {

            output = new FileOutputStream(file);

            //Compress into png format image from 0% - 100%
            bitmap1.compress(Bitmap.CompressFormat.JPEG, 100, output);
            output.flush();
            output.close();

        }

        catch (Exception e) {
            //TODO Auto-generated catch block
            e.printStackTrace();
        }
¿La carpeta tiene un archivo llamado «.nomedia»? Consulte con ES Explorador de Archivos, usted puede necesitar para ver los archivos ocultos, permiten que desde el ES File Explorer menú diapositiva.
No hombre no tiene .nomedia

OriginalEl autor Gatiko06 | 2013-12-31

6 Comentarios

  1. 63

    la galería no mostrar (necesariamente) los archivos de almacenamiento externo.

    este es un error común.

    la galería muestra las imágenes guardadas en la los medios de comunicación proveedor de almacén

    puede utilizar este método para almacenar el archivo de imagen en los medios de comunicación de la tienda proveedor de:

    public static void addImageToGallery(final String filePath, final Context context) {
    
        ContentValues values = new ContentValues();
    
        values.put(Images.Media.DATE_TAKEN, System.currentTimeMillis());
        values.put(Images.Media.MIME_TYPE, "image/jpeg");
        values.put(MediaStore.MediaColumns.DATA, filePath);
    
        context.getContentResolver().insert(Images.Media.EXTERNAL_CONTENT_URI, values);
    }
    Yo soy novato en android cómo se implementa el código en mi código :/ necesito que guardar la imagen en el archivo /WhatSappIMG/ :/
    añadir este método a su código, y añadir esta línea después de la «salida».close();»: addImageToGallery(archivo.getAbsolutePath(), YourActivity.este);
    Lo Siento «YourActivity.este» es bitmap1 en el código ??
    el código proporcionado implementado dentro de la Actividad de la clase? si es así, entonces YourActivity es el Nombre de tu actividad
    si usted pidió que – entonces usted probablemente novato no sólo en android, sino también en java

    OriginalEl autor Tal Kanel

  2. 7

    aquí es lo que usted debe entrar, cuando vas a guardar la imagen en la Galería

    MediaStore.Images.Media.insertImage(getContentResolver(), yourBitmap, yourTitle , yourDescription);

    Que el código que se va a agregar la imagen al final de la Galería. así que por favor, compruebe su Galería de la foto, para estar seguro de que

    OriginalEl autor Edess Elder

  3. 5

    Trate de añadir esto:

    MediaStore.Images.Media.insertImage(getContentResolver(), yourBitmap, yourTitle , yourDescription);

    Rellena tus datos para yourBitmap, yourTitle, y yourDescription, o dejarlo como "".

    Este trabajo, pero guardar la imagen en cuando la imagen de la cámara necesito que guardar la imagen en mi directorio :/

    OriginalEl autor Rohodude

  4. 2

    Necesita agregar un MediaScannerConnection clase a su función de guardar la imagen a la galería. Esta clase explora en busca de nuevos archivos y carpetas en la galería conectado con su aplicación. Agregue la siguiente clase para escanear el recién guardados los archivos de imagen o añadido un nuevo directorio de la imagen a la galería o descargar el Código Fuente

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

    Leer más

    Gracias hombre, ahorrar un montón de tiempo.

    OriginalEl autor Daniel Nyamasyo

  5. 0

    Debe cambiar esta pieza de código

    try {
            output = new FileOutputStream(file);
    
            //Compress into png format image from 0% - 100%
            bitmap1.compress(Bitmap.CompressFormat.JPEG, 100, output);
            output.flush();
            output.close();
            String url = Images.Media.insertImage(getContentResolver(), bitmap1,
            "Wallpaper.jpg", null);
        }
    
        catch (Exception e) {
            //TODO Auto-generated catch block
            e.printStackTrace();
        }
    Esto comprime la imagen y el tamaño de la imagen se cambia.

    OriginalEl autor Kanak Sony

  6. 0

    Para Xamarin becarios:

    public static void SaveToTheGalley(this string filePath, Context context)
    {
        var values = new ContentValues();
        values.Put(MediaStore.Images.Media.InterfaceConsts.DateTaken, Java.Lang.JavaSystem.CurrentTimeMillis());
        values.Put(MediaStore.Images.Media.InterfaceConsts.MimeType, "image/jpeg");
        values.Put(MediaStore.MediaColumns.Data, filePath);
        context.ContentResolver.Insert(MediaStore.Images.Media.ExternalContentUri, values);
    }

    Y no te olvides de android.permission.WRITE_EXTERNAL_STORAGE permiso.

    OriginalEl autor Denis Gordin

Dejar respuesta

Please enter your comment!
Please enter your name here