Stocker une image Bitmap pour Carte SD Android

Je suis confronté à une étrange problème avec mon code android,
J'ai une image en Bitmap variable et que vous voulez enregistrer ce fichier sur la carte SD.
Je code comme suit,

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();
}

Je suis à l'aide de Sony Experia Arc que mes tests de l'appareil, lorsque le téléphone est connecté à mon ordinateur, le code fonctionne bien, c'magasins de l'image et affiche également dans la galerie. Mais quand j'ai déconnecter le téléphone de mon ordinateur et de tester l'application, il n'a pas d'enregistrer l'image et ne montre pas toute exception à la règle.

avez-vous ajouté utilise la permission d'écrire de stockage externe dans le fichier de manifeste.
Ce serait probablement générer une exception, mais bon appel. OP, il y a tout les messages utiles dans le logcat de sortie?
BTW, mineure style nit: ceux conduisant '_' dans les noms de variable ne pas ajouter quoi que ce soit pour des raisons de lisibilité. Je sais qu'ils sont utilisés dans d'autres langues, parfois, mais je ne les utilise pas en Java.

OriginalL'auteur Bhavin Mistry | 2011-10-21