我们的应用程序显示一个摄像头预览和它似乎在除了摩托罗拉Droid我们得到一个运行时异常,当我们设置相机参数的所有手机做工精细:相机预览上摩托罗拉Droid
java.lang.RuntimeException: setParameters failed
at android.hardware.Camera.native_setParameters(Native Method)
at android.hardware.Camera.setParameters(Camera.java:611)
at com.highwaynorth.andrometer.CameraPreviewSurfaceView.surfaceChanged(CameraPreviewSurfaceView.java:57)
at android.view.SurfaceView.updateWindow(SurfaceView.java:460)
at android.view.SurfaceView.dispatchDraw(SurfaceView.java:287)
at android.view.ViewGroup.drawChild(ViewGroup.java:1525)
这里对于surfaceChanged()的代码,主要是利用APIDemos
public void surfaceChanged(SurfaceHolder holder, int format, int w, int h) {
// Now that the size is known, set up the camera parameters and begin
// the preview.
Camera.Parameters parameters = mCamera.getParameters();
parameters.setPreviewSize(w, h);
parameters.setPictureFormat(PixelFormat.JPEG);
parameters.setPreviewFormat(PixelFormat.YCbCr_422_SP);
parameters.setPreviewFrameRate(1);
mCamera.setParameters(parameters);
mCamera.startPreview();
采取}
有谁知道什么是错的,我们是如何设置那些会导致摩托罗拉Droid出现异常的参数?
你说得对。我们将其改为与APIDemos完全匹配,并移除了对setPictureFormat(),setPreviewFormat()和setPreviewFrameRate()的调用,现在它在Droid上正常工作。感谢您的详细解答! – 2010-01-11 04:18:20