我唯一可能发现的原因是您在
jpegCallback返回之前再次启动了预览。根据javadoc,这是不允许的:
调用此方法后,在返回JPEG回调之前,您不得调用startPreview()或拍摄其他图片。
The callback is actually put on the UI thread queue - which will be suspended
in your
Thread.sleep()and the same thread will have called
stopPreview()
and
startPreview()before actually coming to the callback. Generally
speaking, if you call
Thread.sleep()on the UI thread - you’re doing it
wrong. So, hopefully if you remove the
sleep()and put what comes after it
in the
jpegCallbackyour problem should be solved.


![Android相机,永不调用onPictureTaken(byte [] imgData,Camera相机)方法和PictureCallback Android相机,永不调用onPictureTaken(byte [] imgData,Camera相机)方法和PictureCallback](http://www.mshxw.com/aiimages/31/609919.png)
