Jika ingin menambahkan fungsi kamera ke aplikasi Android, Anda memiliki tiga opsi utama:
Bagi sebagian besar developer, sebaiknya gunakan CameraX. CameraX adalah library Jetpack yang mendukung sebagian besar perangkat Android (Android 5.0 dan yang lebih tinggi) serta menyediakan API tingkat tinggi yang konsisten, yang didesain untuk kasus penggunaan umum. CameraX juga menyelesaikan masalah kompatibilitas perangkat secara otomatis sehingga Anda tidak perlu menambahkan kode khusus perangkat dalam aplikasi.
CameraX di-build di atas paket Camera2. Jika Anda memerlukan kontrol kamera tingkat rendah untuk mendukung kasus penggunaan yang kompleks, Camera2 adalah opsi yang bagus, tetapi API-nya lebih kompleks daripada CameraX. Opsi ini mengharuskan Anda mengelola konfigurasi khusus perangkat. Seperti CameraX, Camera2 berfungsi di Android 5.0 (API level 21) dan yang lebih tinggi.
Class Camera Android yang asli sudah tidak digunakan lagi. Aplikasi baru harus menggunakan CameraX (direkomendasikan) atau Camera2, dan aplikasi yang sudah ada harus dimigrasikan untuk memanfaatkan fitur baru serta menghindari hilangnya kompatibilitas dengan perangkat di masa mendatang.