Camera2 カメラIDの取得方法|Android開発
Camera2 APIでのカメラID取得方法です。
下記では、背面カメラのIDを取得しています。
この処理は、TextureViewがavailableになる前でも実行可能です。
public List getBackCameraIds() {
CameraManager cameraManager = (CameraManager) getSystemService(Context.CAMERA_SERVICE);
ArrayList backIds = new ArrayList<>();
try {
String[] idList = cameraManager.getCameraIdList();
for (String id : idList) {
CameraCharacteristics characteristics = cameraManager.getCameraCharacteristics(id);
Integer lensFacing = characteristics.get(CameraCharacteristics.LENS_FACING);
if (lensFacing != null && lensFacing == CameraCharacteristics.LENS_FACING_BACK) {
backIds.add(id);
}
}
} catch (CameraAccessException e) {
e.printStackTrace();
}
return backIds;
}
前面カメラのIDを取得したい場合は、CameraCharacteristics.LENS_FACING_BACKをCameraCharacteristics.LENS_FACING_FRONTにします。