原创 Android Camera開發完全手冊

      隨着Android版本迭代,Camera的重要性也日益凸顯。Camera的數量從後置單顆發展到最新的後置五顆模組;分辨率從後置200萬發展到驚人的一億像素。Android Camera幾乎每一代都在發生翻天覆地的變化。這些變化

原创 1.3Camera2 Session機制詳解及Camera1的對比

想要理解API2的Session機制,不能簡單的只從Camera看,而是要結和Sesion本身的概念來看。 一、Session機制 1、Web應用中的Session 計算機領域的Session概念主要來自於Web通信,在網絡應用中,稱爲會

原创 1.6API2拍攝RAW圖

在前一節我們分析了yuv數據的獲取方法,這一節進行的raw數據拍照,實際上與yuv數據沒有本質的區別。 區別僅僅是ImageReader的format爲ImageFormat.RAW_SENSOR,並且在createCaptureSess

原创 2.2Camera open在Framework中的過程

在前面的內容中,我們提到過CameraManager類的主要用途是open cam­era,這一節我們將詳細梳理這一過程在Framework中的類和邏輯。 SDK提供的方法最終調用openCameraDeviceUserAsync方法,通

原创 1.4Metadata與Characteristics

在上一節我們已經學習過Camera的參數通過Session下發到HAL層,這一節我們將詳細探索CameraMetadata。 在公開的SDK中,除了CameraMetadata類之外,還存在三個繼承它的子類,分別是CameraChara

原创 1.1Android Camera源碼路徑及類簡介

      Camera API是Android APP開發的主要方式,Android 9.0主要有1.0和2.0兩個版本。目前Google在全面推API2,但是應用市場上的主流應用大部分依然使用的是1.0,如QQ、微信等;而一般手機自帶

原创 1.2Camera Preview流程及源碼分析

Camera API2的預覽實現在網上有非常多的代碼可以參考,包括Google官方提供的Demo。直接看代碼,模仿、改寫當然是最快的實現方式,但如果其中的邏輯關係可能沒有捋順清楚,在沒有參考代碼的情況下,能否同樣實現相關功能就值得商榷了。

原创 1.5 Camera API2輸出yuv數據

在前面我們已經知道createCaptureSession方法的第一個參數會傳入一個list,一般這個list會有三個值,用於preview的SurfaceView的surface,用於保存拍照數據的ImageReader的surface

原创 2.1 Android啓動與CameraService進程加載

從這一章節開始,筆者將對Camera的Framework框架進行分析。 對於Camera Framework框架而言,其核心就是CameraService,所以本節將首先探究Camera service是什麼,Camera Service

原创 2.5 Camera open拾遺

前面把Camera open在Framework的流程已經梳理清楚,但是還有一些細節值得一提。 CameraDevice.StateCallback與Executor 在open方法中傳入了一個Executor對象,這個對象是在執行Cal

原创 scrapy學習筆記--scrapy命令

使用scrapy是一定需要使用到它的命令工具的,所以熟練掌握會很方便。 查看所有可用的命令了: scrapy -h h的意思就是help,這一點與大多數應用的命令是一致的。 如圖一共有十五個可用命令,這些命令分爲兩類:全局命令、項

原创 scrapy學習筆記--Items

Item對象是一種簡單容器,用於結構化的保存抓取的數據。 Item使用簡單的class定義語句一級Field對象來聲明。 <span style="font-size:14px;">import scrapy class Firsts

原创 Hybrid App開發

現在移動應用開發主流都採用Hybrid App模式,例如淘寶、微信、手機QQ、攜程、去哪兒、手機百度等都使用了Hybrid APP開發模式。 一、   hybrid App的三種解決方案 方案一:使用PhoneGap、AppCan之類的中

原创 2.3camera service的connectDevice的過程

在上一節中,我們梳理了camera open在framework中涉及的類和它們的主要功能,但是我們跳過了一些關鍵的細節,所以在這一章節中,我們將首先來分析connectDevice的過程。 首先我們來看在ICameraService.

原创 scrapy學習--Spiders

一、爬蟲的工作流程 1.通過調用start_request()中的URL獲取初始的request,並以parse爲回調函數生成Request。 2.在parse方法中分析返回的內容,返回Item對象或者Request或者一個可迭代容器。