編輯:關於Android編程
前言:監於5.0之後Google用的是Camera2相關API取代之前的Camera,過時的Camera雖然精典,但不再進行介紹,可自行查閱相關資料。今天本文是在正式深入代碼前對Camera2的一個補充。上篇中,最後用兩種方式各自定義了一個相機的Sample。
Camera2下各個Class介紹 Camera2整體運作圖 Camera2類圖(局部) Camera2中3個重要的Callback setRepeatingRequest和capture5.0後用了全新的設計的Camera2下的API, 這些API不僅提供了Android系統的拍照功能,還能支持RAW照片輸出,甚至允許程序調整相機的對焦模式,曝光模式,快門等。
接下來接介紹Camera2下的各個類:
CmaeraManager: 攝像頭管理者,這是一個全新的系統管理者,專門用戶檢測系統攝像頭,打開系統攝像頭,除此之外,調用CameraManager的getCameraCharacteristics(String)方法即可獲取指定攝像頭的相關特性。 CameraCharacteristics:攝像頭特性。該對象通過CameraManager來獲取,用於描述特定攝像頭所支持的各種特性。 CameraDevice:代表系統攝像頭。該類的功能類似於早期的Camera類。 CameraCaptureSession:這是一個與攝像頭建立會話的類,當程序需要預覽、拍照時,都需要先通過該類的實例創建Session。而且不管預覽還是拍照,也都是由該對象的方法進行控制的,其中控制預覽的方法為setRepeatingRequest();控制拍照的方法為capture()。
類圖中有著三個重要的callback,其中CameraCaptureSession.CaptureCallback將處理預覽和拍照圖片的工作,需要重點對待。
調用openCamera方法後會回調CameraDevice.StateCallback這個方法,在該方法裡重寫onOpened函數。在onOpened方法中調用createCaptureSession,該方法又回調CameraCaptureSession.StateCallback方法。 在CameraCaptureSession.StateCallback中重寫onConfigured方法,設置setRepeatingRequest方法(也就是開啟預覽了)。
以上重點是3個Callback函數的回調
接下來了解下:setRepeatingRequest和capture方法其實都是向相機設備發送獲取圖像的請求,但是capture就獲取那麼一次,而setRepeatingRequest就是不停的獲取圖像數據,所以呢,使用capture就想拍照一樣,圖像就停在那裡,但是setRepeatingRequest一直在發送和獲取,所以需要連拍的時候就調用它,然後在onCaptureCompleted中保存圖像就行了。(注意了,圖像的預覽也是用的setRepeatingRequest,只是你不處理數據就行)
Android權限系統是一個非常重要的安全問題,因為它只有在安裝時會詢問一次。一旦軟件本安裝之後,應用程序可以在用戶毫不知情的情況下使用這些權限來獲取所有的內容。很多壞蛋
Volley簡介我們平時在開發Android應用的時候不可避免地都需要用到網絡技術,而多數情況下應用程序都會使用HTTP協議來發送和接收網絡數據。Androi
留守公司就剩下幾個人了。我沒有年假故還在堅守。廢話不多說,閒來無事。想練習一下自定義控件的應用以及學習圖片類操作以及處理等等。所以我在網上找了大神文章,鴻洋大神的博客。找
本文實例為大家分享了Android創建發送和接收短信應用的簡單實現過程,供大家參考,具體內容如下一、接收短信項目的結構如下:一個簡單的接收和發送短信的功能1、定義一個接收