检查 Android 设备上是否存在相机的最佳方法?

Best way to check if Camera exists on Android device?

有 cwac-camera 库,还有 Lollipop 中已弃用的 android.hardware.camera。现在有 android.hardware.camera2.

使用 andorid.hardware.camera,解决方案就像检查 Camera.getNumOfCameras() <= 0 一样简单。我不知道 android.hardware.camera2 的解决方案。

我的项目中确实包含 cwac-camera 库,但我没有看到任何文档可以快速简单地检查设备上是否存在摄像头。

我目前的尝试是检查 SDK 版本。如果是LOLLIPOP不到,那我就用Camera.getNumOfCameras <= 0。否则,我想使用 android.hardware.camera2,但我找不到关于如何简单地检查 phone 是否有摄像头的集中文档。

试试这个:

    import android.content.pm.PackageManager;
    PackageManager pm = context.getPackageManager();
    if (pm.hasSystemFeature(PackageManager.FEATURE_CAMERA_ANY)) {
    bool device_has_camera = True
}