Abh*_*nav 2 camera android android-2.2-froyo
我已经在Android SDK上测试了我的应用程序,从1.5到2.2,我的活动中的摄像头代码工作正常.在2.1的设备上运行它也有效.但同样的应用程序无法与HTC Desire和Nexus One上的2.2兼容,应用程序崩溃.有什么想法可能会发生吗?
我正在使用import android.hardware.Camera; .
在onCreate里面我有这个:
preview = (SurfaceView) findViewById(R.id.preview);
previewHolder = preview.getHolder();
previewHolder.addCallback(surfaceCallback);
previewHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
Run Code Online (Sandbox Code Playgroud)
回调是
SurfaceHolder.Callback surfaceCallback = new SurfaceHolder.Callback() {
@Override
public void surfaceDestroyed(SurfaceHolder holder) {
camera.stopPreview();
camera.release();
camera = null;
}
@Override
public void surfaceCreated(SurfaceHolder holder) {
camera = Camera.open();
try {
camera.setPreviewDisplay(previewHolder);
} catch (Throwable t) {
Log.e(TAG, "Exception in setPreviewDisplay", t);
Toast.makeText(CameraActivity.this, t.getMessage(),
Toast.LENGTH_LONG).show();
}
}
@Override
public void surfaceChanged(SurfaceHolder holder, int format, int width,
int height) {
Camera.Parameters parameters = camera.getParameters();
parameters.setPreviewSize(width, height);
camera.setParameters(parameters);
camera.startPreview();
}
};
Run Code Online (Sandbox Code Playgroud)
获得最佳相机尺寸后,需要设置相机的预览尺寸.以下是修复的详细信息和代码 -
http://code.google.com/p/android/issues/detail?id=7909
归档时间: |
|
查看次数: |
8342 次 |
最近记录: |