Android 第三次命名拍摄图像
我创建了一个基本的服务,每10秒钟从一台相机获取一次图像。这项服务运行得很好,但我尝试将图像文件命名为Imageyyydmm\u HHmmSS。在第二个文件之后,图像将获得相同的YYYYddmm_hhmms,从而覆盖第一个图像。我的错在哪里Android 第三次命名拍摄图像,android,android-camera,Android,Android Camera,我创建了一个基本的服务,每10秒钟从一台相机获取一次图像。这项服务运行得很好,但我尝试将图像文件命名为Imageyyydmm\u HHmmSS。在第二个文件之后,图像将获得相同的YYYYddmm_hhmms,从而覆盖第一个图像。我的错在哪里 public class CP extends Service { Camera.PictureCallback mCall = new Camera.PictureCallback() { public void onPicture
public class CP extends Service
{
Camera.PictureCallback mCall = new Camera.PictureCallback()
{
public void onPictureTaken(final byte[] data, Camera camera)
{
FileOutputStream outStream = null;
try{
outStream = new FileOutputStream("/sdcard/Image"+tar+".jpg");
outStream.write(data); outStream.close();
Log.i("CAM", data.length + " byte written: /sdcard/Image"+tar+".jpg");
camClose(sHolder);
} catch (FileNotFoundException e){
Log.d("CAM", e.getMessage());
} catch (IOException e){
Log.d("CAM", e.getMessage());
}
}
};
@Override
public IBinder onBind(Intent intent) {
return null;
}
public void camClose(SurfaceHolder sHolder) {
if (null == mCamera)
return;
mCamera.stopPreview();
mCamera.release();
mCamera = null;
Log.i("CAM", " closed");
}
}
Tar从未更新到当前时间。在onPictureTaken中,尝试以下操作:
public void onPictureTaken(final byte[] data, Camera camera)
{
FileOutputStream outStream = null;
try{
Calendar cal = Calendar.getInstance();
tar = (sdf.format(cal.getTime()));
outStream = new FileOutputStream("/sdcard/Image"+tar+".jpg");
outStream.write(data); outStream.close();
Log.i("CAM", data.length + " byte written: /sdcard/Image"+tar+".jpg");
camClose(sHolder);
} catch (FileNotFoundException e){
Log.d("CAM", e.getMessage());
} catch (IOException e){
Log.d("CAM", e.getMessage());
}
}
谢谢这就是我想要的。