Tengo un extraño problema con mi código de Android, Tengo una imagen en la variable de mapa de bits y quiero guardar ese archivo en la tarjeta SD. código I de la siguiente manera,Tienda de imagen de mapa de bits a la tarjeta SD en Android
Bitmap IMAGE // Loaded from internet servers.;
try {
File _sdCard = Environment.getExternalStorageDirectory();
File _picDir = new File(_sdCard, "MyDirectory");
_picDir.mkdirs();
File _picFile = new File(_picDir, "MyImage.jpg");
FileOutputStream _fos = new FileOutputStream(_picFile);
IMAGE.compress(Bitmap.CompressFormat.JPEG, 100, _fos);
_fos.flush();
_fos.close();
Toast.makeText(this, "Image Downloaded", 7000).show();
} catch (Exception ex) {
ex.printStackTrace();
Toast.makeText(this, ex.getMessage(), 7000).show();
}
estoy usando Xperia Arco como mi dispositivo de prueba, cuando el teléfono está conectado al ordenador, el código funciona bien, que almacena la imagen y también exhibe en la galería. Pero cuando desconecto el teléfono de mi computadora y pruebo la aplicación, no guarda la imagen y no muestra ninguna excepción.
Agregue usos permiso para escribir extern al almacenamiento en archivo de manifiesto. –
Eso generaría probablemente una excepción, pero una buena llamada. OP, ¿hay algún mensaje útil en la salida de logcat? –
BTW, estilo menor nit: aquellos que llevan '_' en los nombres de las variables no agregan nada a la legibilidad. Sé que a veces se utilizan en otros idiomas, pero no los usaría en Java. –