Android手機拍照(Android學習隨筆九) – Android移動開發技術文章_手機開發 Android移動開發教學課程

 

使用android.hardware.Camera類來拍照片。具體步驟如下:

 

a、獲取Camera實例對象,

 

Camera camera = Camera.open();

 

或者,Camera camera = Camera.open(int cameraId);

 

cameraId表示camera設備號,即與指定的camera進行連接鎖定和準備 使用。

 

b、獲取指定相機參數,

 

Camera.Parameters parameters = camera.getParameters();

 

c、如果有必要重新設置相機參數,可進行如下編碼:

 

parameters.setXXX();

 

camera.setParameters(prarameters);

 

d、如果想要以一定的角度攝像,可調用一下函數:

 

camera.setDiaplayOrientation(int degrees);

 

degrees的有效值隻有0(橫屏),90,180,270。

 

e、通過完全初始化SurfaceHolder去調用setPreviewDisp (SurfaceHolder)來預覽圖片。

 

f、調用startPreview()開始更新surface,並且預覽必須在你拍照 片之前開始。

 

g、調用takePicture(Camera.ShutterCallback,  Camera.PictureCallback, Camera.PictureCallback,  Camera.PictureCallback)去捕獲圖片。並且,等待callbacks提供 實際的圖片數據。

 

h、得到一張照片後,預覽將會停止,如果還想去再照一張照片,就要調用startPreview()。

 

i、如果要退出,就因該依次調用stopPreview()和release()。

 

註意:在使用Camera時,必須要用如下權限android.permission.CAMERA。並且,還可根據需要設置相應的照相機特點,如:

 

<uses-feature android:name="android.hardware.camera" />//應用程序使用Camera設備。

<uses-feature android:name="android.hardware.camera.autofocus" />//設置Camera能夠自動對焦

摘自 tianshijianbing1989的專欄

 

發佈留言