Java 非常奇怪将照片保存到SD卡
我将我的应用程序的照片保存到数组位图中。然后,当我确实需要时,我调用shot功能Java 非常奇怪将照片保存到SD卡,java,android,save,Java,Android,Save,我将我的应用程序的照片保存到数组位图中。然后,当我确实需要时,我调用shot功能saveAll(),如下面的代码所示 public void saveAll(View view) { for (Bitmap b : arrBitmap) { SystemClock.sleep(1000); try { File pictureFile = getOutputMediaFile(); if (pictureFile == null) {
saveAll()
,如下面的代码所示
public void saveAll(View view) {
for (Bitmap b : arrBitmap) {
SystemClock.sleep(1000);
try {
File pictureFile = getOutputMediaFile();
if (pictureFile == null) {
return;
}
FileOutputStream fos = new FileOutputStream(pictureFile);
fos.write(convertBitmapToByteArray(b));
fos.close();
Toast.makeText(context, "Picture saved: " + pictureFile.getName(),
Toast.LENGTH_SHORT).show();
} catch (Exception e) {
}
}
}
private byte[] convertBitmapToByteArray(Bitmap bitmap) {
ByteArrayOutputStream stream = new ByteArrayOutputStream(bitmap.getWidth() *
bitmap.getHeight());
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, stream);
return stream.toByteArray();
}
private static File getOutputMediaFile() {
File mediaStorageDir = new File("/sdcard/", "JCG Camera");
if (!mediaStorageDir.exists()) {
if (!mediaStorageDir.mkdirs()) {
return null;
}
}
String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
File mediaFile;
mediaFile = new File(mediaStorageDir.getPath() + File.separator + "IMG_" +
timeStamp + ".jpg");
return mediaFile;
}
而且照片保存得很奇怪,一开始可能不会保存或保存全部,但第一个或第一个没有保存,但是当我进一步测试代码时,它们可能会出现,但每次Toast都显示全部保存。请告诉我
我做错了什么?不清楚。你问了什么?我的意思是,用这个代码,我的图片可以随心所欲地保存。它可以保存,也可以不保存。它可以保存除第一张外的所有图片。。。这取决于什么?