Add the surfaceview Control for displaying the landscape view in the main. xml layout file:
<Surfaceview Android: layout_width = "fill_parent" Android: layout_height = "240dip" Android: Id = "@ + ID/surfaceview"/>
Surfaceview = (surfaceview) This. findviewbyid (R. Id. surfaceview );
Surfaceview. getholder (). setfixedsize (176,144); // sets the resolution.
/* Set the surface below not to maintain its own buffer, but to wait for the screen rendering engine to push the content to the user */
Surfaceview. getholder (). settype (surfaceholder. surface_type_push_buffers );
Camera camera = camera. open ();
Windowmanager WM = (windowmanager) getsystemservice (context. window_service );
Display display = WM. getdefaultdisplay ();
Camera. parameters = camera. getparameters ();
Parameters. setpreviewsize (display. getwidth (), display. getheight (); // you can specify the preview size.
Parameters. setpreviewframerate (3); // 3 frames per second
Parameters. setpictureformat (pixelformat. JPEG); // you can specify the photo output format.
Parameters. Set ("Jpeg-quality", 85); // photo quality
Parameters. setpicturesize (display. getwidth (), display. getheight (); // set the Photo size
Camera. setparameters (parameters );
Camera. setpreviewdisplay (surfaceview. getholder (); // you can use surfaceview to view the video.
Camera. startpreview (); // start previewing
Camera. autofocus (null); // auto focus
Camera. takepicture (null, callback); // take a photo
Camera. stoppreview (); // stop Preview
Camera. Release (); // release the camera
Androidmanifest. xml Main. xml
Takepicactivity