原文出处:http://blog.youkuaiyun.com/jefry_xdz/article/details/7901587
感觉没预览的代码如下:
- package
com.jefry.camera; -
- import
java.io.File; - import
java.util.Timer; -
- import
android.app.Activity; - import
android.hardware.Camera; - import
android.hardware.Camera.Parameters; - import
android.hardware.Camera.PreviewCallback; - import
android.os.Bundle; - import
android.util.Log; - import
android.view.SurfaceHolder; - import
android.view.SurfaceView; -
- public
class CameraPreview extends Activity implements SurfaceHolder.Callback,PreviewCallback{ -
-
SurfaceHolder surfaceHolder ; -
-
Camera camera ; -
-
-
@Override -
public void onCreate(Bundle savedInstanceState) { -
super.onCreate(savedInstanceState); -
setContentView(R.layout.main); -
SurfaceView view = (SurfaceView) findViewById(R.id.surface_view); -
view.getHolder().addCallback(this); -
view.getHolder().setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); -
-
-
} -
public void surfaceCreated(SurfaceHolder holder) { -
-
} -
-
public void surfaceChanged(SurfaceHolder holder, int format, int width, -
int height) { -
try{ -
camera = Camera.open(); -
camera.setPreviewDisplay(holder); -
Parameters params = camera.getParameters(); -
params.setPreviewSize(352, 288); -
camera.setParameters(params); -
camera.startPreview() ; -
camera.setPreviewCallback(this); -
}catch(Exception e){ -
e.printStackTrace(); -
} -
} -
public void surfaceDestroyed(SurfaceHolder holder) { -
if(camera != null) camera.release() ; -
camera = null ; -
} -
-
public void onPreviewFrame(byte[] data, Camera camera) { -
Log.i("jefry", "vedio data come ..."); -
-
} -
-
- }
布局文件: