[Java]
// Obtain screen information
WindowManager wm = (WindowManager) getSystemService (Context. WINDOW_SERVICE );
Display display = wm. getDefaultDisplay ();
// Initialize the camera
Camera camera = Camera. open ();
Camera. Parameters parameters = camera. getParameters ();
Parameters. setPreviewSize (display. getWidth (), display. getHeight ());
List <Camera. Size> pszize = parameters. getSupportedPictureSizes ();
If (null! = Pszize & 0 <pszize. size ()){
Int height [] = new int [pszize. size ()];
Map <Integer, Integer> map = new HashMap <Integer, Integer> ();
For (int I = 0; I <pszize. size (); I ++ ){
Camera. Size size = (Camera. Size) pszize. get (I );
Int sizeheight = size. height;
Int sizewidth = size. width;
Height [I] = sizeheight;
Map. put (sizeheight, sizewidth );
}
Arrays. sort (height );
Parameters. setPictureSize (map. get (height [0]), height [0]);
} Else {
Parameters. setPictureSize (display. getWidth (), display. getHeight ());
}