Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/208.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 第三次命名拍摄图像_Android_Android Camera - Fatal编程技术网

Android 第三次命名拍摄图像

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

我创建了一个基本的服务,每10秒钟从一台相机获取一次图像。这项服务运行得很好,但我尝试将图像文件命名为Imageyyydmm\u HHmmSS。在第二个文件之后,图像将获得相同的YYYYddmm_hhmms,从而覆盖第一个图像。我的错在哪里

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


 }

谢谢这就是我想要的。