● Camera.PreviewCallback:定義了onPreviewFrame(byte[] data, Camera camera) 方法,當存在預覽幀(preview frame)時調用該方法。可以傳入儲存當前映像像素的位元組數組。在Camera對象上,有3種不同的方式使用這個回調:
· setPreviewCallback(Camera.PreviewCallback):使用此方法註冊一個Camera. PreviewCallback,這將確保在螢幕上顯示一個新的預覽幀時調用onPreviewFrame方法。傳遞到onPreviewFrame方法中的資料位元組數組最有可能採用YUV格式。但是,Android 2.2是第一個包含了YUV格式解碼器(YuvImage)的版本;在以前的版本中,必須手動完成解碼。
· setOneShotPreviewCallback(Camera.PreviewCallback):利用Camera對象上的這個方法註冊Camera.PreviewCallback,從而當下一幅預覽映像可用時調用一次onPreviewFrame。同樣,傳遞到onPreviewFrame方法的預覽映像資料最有可能採用YUV格式。可以通過使用ImageFormat中的常量檢查Camera. getParameters(). getPreviewFormat()返回的結果來確定這一點。
· setPreviewCallbackWithBuffer(Camera.PreviewCallback):在Android 2.2中引入了該方法,其與setPreviewCallback的工作方式相同,但要求指定一個位元組數組作為緩衝區,用於預覽映像資料。這是為了能夠更好地管理處理預覽映像時使用的記憶體。
● Camera.AutoFocusCallback:定義了onAutoFocus方法,當完成一個自動聚焦活動時調用它。通過傳入此回調介面的一個執行個體,在調用Camera對象上的autoFocus方法時會觸發自動聚焦。
● Camera.ErrorCallback:定義了onError方法,當發生一個Camera錯誤時調用它。有兩個常量可用於與傳入的錯誤碼進行比較:CAMERA_ERROR_UNKNOWN和CAMERA_ERROR_SERVER_DIED。
● Camera.OnZoomChangeListener:定義了onZoomChange方法,當進行中或完成“平滑縮放”(慢慢縮小或放大)時調用它。在Android 2.2 (API Level 8)中引入了這個類和方法。
Camera.ShutterCallback:定義了onShutter方法,當捕獲映像時立刻調用它