Ниже приведены важные вещи. Проблема заключается в следующем: у меня камера делает снимок, когда я нажимаю на поверхность и сохраняю изображение на SD-карту . Если я щелкну два или более раз, прежде чем камера сохранит изображение, камера зависнет и потребуется перезагрузка телефона. Я думаю, что все материалы для релиза верны. Я даже реализовал логическое значение onProgress
, чтобы выполнить какое-то действие, но, похоже, оно не работает.
public void onClick() {
if(!onProgress)
mCamera.takePicture(null, mPictureCallback, mPictureCallback);
}
Camera.PictureCallback mPictureCallback = new Camera.PictureCallback() {
public void onPictureTaken(byte[] imageData, Camera c) {
onProgress=true;
if (imageData != null) {
Intent mIntent = new Intent();
try {
FileOutputStream out = new FileOutputStream(
"/sdcard/Deltio1.jpg");
Bitmap e = BitmapFactory.decodeByteArray(imageData, 0,
imageData.length);
e.compress(Bitmap.CompressFormat.JPEG, 65, out);
out.close();
Intent i = new Intent(ACT, MediaSend.class);
ACT.startActivity(i);
}
catch (Exception e) {
Toast
.makeText(
CON,
"???ß??µa st?? ap????e?s?.?eßa???e?te ?t? ??ete sdcard e??atest?µ???",
Toast.LENGTH_LONG).show();
ACT.finish();
}
// FileUtilities.StoreByteImage(mContext, imageData,
// 50, "ImageName");
SystemClock.sleep(2000);
mCamera.startPreview();
onProgress=false;
// setResult(FOTO_MODE,mIntent);
// finish();
}
}
};
Вы можете сослаться на весь код .