我已经使用Mediastore为相机创建了一个意图,但是每次在相机的先前保存状态下打开它时,都可以。我希望它默认打开前置摄像头,而不管以前的状态如何。 堆栈溢出的所有现有答案至少已有2年了,现在没有任何帮助。
答案 0 :(得分:0)
是的,默认情况下我们可以打开特定的相机,这是一个功能:
fun getFirstCameraIdFacing(cameraManager: CameraManager,
facing: Int = CameraMetadata.LENS_FACING_FRONT): String? {
val cameraIds = cameraManager.cameraIdList
// Iterate over the list of cameras and return the first one matching desired
// lens-facing configuration
cameraIds.forEach {
val characteristics = cameraManager.getCameraCharacteristics(it)
if (characteristics.get(CameraCharacteristics.LENS_FACING) == facing) {
return it
}
}
// If no camera matched desired orientation, return the first one from the list
return cameraIds.firstOrNull()
}
它是kotlin版本,但是逻辑很明确,您可以轻松地将其修改为Java代码。
的参考