1a3cb716626b477c98ba912698c765eab20f27286Jim Millerpackage com.android.ex.carousel; 2a3cb716626b477c98ba912698c765eab20f27286Jim Miller 3a3cb716626b477c98ba912698c765eab20f27286Jim Millerimport java.io.File; 4a3cb716626b477c98ba912698c765eab20f27286Jim Millerimport java.io.FileOutputStream; 5a3cb716626b477c98ba912698c765eab20f27286Jim Millerimport java.io.IOException; 6a3cb716626b477c98ba912698c765eab20f27286Jim Millerimport java.io.OutputStream; 7a3cb716626b477c98ba912698c765eab20f27286Jim Miller 8a3cb716626b477c98ba912698c765eab20f27286Jim Millerimport android.content.Context; 9a3cb716626b477c98ba912698c765eab20f27286Jim Millerimport android.graphics.Bitmap; 10a3cb716626b477c98ba912698c765eab20f27286Jim Millerimport android.media.MediaScannerConnection; 11a3cb716626b477c98ba912698c765eab20f27286Jim Millerimport android.os.Environment; 12a3cb716626b477c98ba912698c765eab20f27286Jim Millerimport android.util.Log; 13a3cb716626b477c98ba912698c765eab20f27286Jim Miller 14a3cb716626b477c98ba912698c765eab20f27286Jim Millerpublic class CarouselViewUtilities { 15a3cb716626b477c98ba912698c765eab20f27286Jim Miller /** 16a3cb716626b477c98ba912698c765eab20f27286Jim Miller * Debug utility to write the given bitmap to a file. 17a3cb716626b477c98ba912698c765eab20f27286Jim Miller * 18a3cb716626b477c98ba912698c765eab20f27286Jim Miller * @param context calling context 19a3cb716626b477c98ba912698c765eab20f27286Jim Miller * @param bitmap the bitmap to write 20a3cb716626b477c98ba912698c765eab20f27286Jim Miller * @param filename the name of the file to write 21a3cb716626b477c98ba912698c765eab20f27286Jim Miller * @return 22a3cb716626b477c98ba912698c765eab20f27286Jim Miller */ 23a3cb716626b477c98ba912698c765eab20f27286Jim Miller public static boolean writeBitmapToFile(Context context, Bitmap bitmap, String filename) { 24a3cb716626b477c98ba912698c765eab20f27286Jim Miller File path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES); 25a3cb716626b477c98ba912698c765eab20f27286Jim Miller File file = new File(path, filename); 26a3cb716626b477c98ba912698c765eab20f27286Jim Miller boolean result = false; 27a3cb716626b477c98ba912698c765eab20f27286Jim Miller try { 28a3cb716626b477c98ba912698c765eab20f27286Jim Miller path.mkdirs(); 29a3cb716626b477c98ba912698c765eab20f27286Jim Miller OutputStream os = new FileOutputStream(file); 30a3cb716626b477c98ba912698c765eab20f27286Jim Miller MediaScannerConnection.scanFile(context, new String[] { file.toString() }, null, null); 31a3cb716626b477c98ba912698c765eab20f27286Jim Miller bitmap.compress(Bitmap.CompressFormat.PNG, 100, os); 32a3cb716626b477c98ba912698c765eab20f27286Jim Miller result = true; 33a3cb716626b477c98ba912698c765eab20f27286Jim Miller } catch (IOException e) { 34a3cb716626b477c98ba912698c765eab20f27286Jim Miller Log.w("ExternalStorage", "Error writing " + file, e); 35a3cb716626b477c98ba912698c765eab20f27286Jim Miller } 36a3cb716626b477c98ba912698c765eab20f27286Jim Miller return result; 37a3cb716626b477c98ba912698c765eab20f27286Jim Miller } 38a3cb716626b477c98ba912698c765eab20f27286Jim Miller 39a3cb716626b477c98ba912698c765eab20f27286Jim Miller} 40