CameraX 總覽 Android Jetpack 的一項工具。
CameraX 是一種 Jetpack 程式庫,旨在簡化相機應用程式的開發作業。如要建構新的應用程式,建議先從 CameraX 開始著手。這個程式庫提供一致且易於使用的 API,適用於大多數 Android 裝置,而且具備 Android 5.0 (API 級別 21) 的回溯相容性。如果要從 Camera1 遷移應用程式,請參閱「從 Camera1 到 CameraX 的遷移指南」。
主要優點
CameraX 可透過下列幾個主要方式改善開發人員體驗。
相容於多種裝置
CameraX 支援搭載 Android 5.0 (API 級別 21) 以上版本的裝置,占現有 Android 裝置的 98% 以上。
使用方便
CameraX 以用途為主軸,讓您能專心處理需要完成的工作,無須管理個別裝置的細微差異,並支援下列幾種最常見的相機用途:
跨裝置的一致性
維持相機行為的一致性並非易事,必須考慮長寬比、螢幕方向、旋轉、預覽尺寸和圖片大小等因素,而 CameraX 讓這些基本行為能夠順利運作。
我們負責維護的自動化 CameraX 測試研究室,可測試多種裝置及所有作業系統版本 (Android 5.0 以上) 的相機行為。這些測試會持續執行,找出各種問題並加以修正。
相機擴充功能
CameraX 提供選用的 Extensions API,您只須加上兩行程式碼,就能使用與裝置原生相機應用程式相同的功能與特色。
這些擴充功能包括散景 (肖像)、高動態範圍 (HDR)、夜間模式和修容功能,但前提是裝置必須支援這些功能。
個案研究
如要瞭解 CameraX 如何簡化 Monzo 的開發作業,請參閱個案研究。
說明文件
其他資源
如要進一步瞭解 CameraX,請參閱下列其他資源。
程式碼研究室
程式碼範例