2013-07-25 28 views

cevap

3
Camera mCamera; 
private boolean safeCameraOpen(int id) { 
boolean qOpened = false; 

    try { 
     releaseCamera(); 
     mCamera = Camera.open(id); 
     qOpened = (mCamera != null); 
    } catch (Exception e) { 
     Log.e(getString(R.string.app_name), "failed to open Camera"); 
     e.printStackTrace(); 
    } 

    return qOpened;  
} 

private void releaseCamera() { 
    if (mCamera != null) { 
     mCamera.release(); 
     mCamera = null; 
    } 
} 

//somewhere in your code call this: 
mCamera.takePicture(null, null, mCall); 


Camera.PictureCallback mCall = new Camera.PictureCallback() { 

    public void onPictureTaken(byte[] data, Camera camera) { 
     //decode the data obtained by the camera into a Bitmap 

     FileOutputStream outStream = null; 
       try { 
        outStream = new FileOutputStream("/sdcard/Image.jpg"); 
        outStream.write(data); 
        outStream.close(); 
       } catch (FileNotFoundException e){ 
        Log.d("CAMERA", e.getMessage()); 
       } catch (IOException e){ 
        Log.d("CAMERA", e.getMessage()); 
       } 

    } 
}; 
+1

sayesinde çok yardımcı ... – user2545522

+0

çağrı 'mCamera.startPreview()' safeCameraOpen' 'sonrasında startPreview uğramadan işe yaramaz – Vlad

İlgili konular