【问题标题】:Google Nexus 7 indicating it has no camera谷歌 Nexus 7 显示它没有摄像头
【发布时间】:2012-10-04 22:05:22
【问题描述】:

当我的应用在 Google Nexus 7 平板电脑上运行时,它会返回 false 进行此标准 Android 测试,以查看设备是否配备了摄像头。

    PackageManager pm = this.getPackageManager();
    if(!pm.hasSystemFeature(PackageManager.FEATURE_CAMERA)) {
        // disable camera button
    }

现在我意识到 Nexus 7 没有内置相机应用程序,但是当我尝试启动相机活动时,我会使用以下内容(让用户可以选择其他应用程序)。

    File fTempCameraFullDirPath = new File(msTempCameraFullDirPath);
    Uri outputFileUri = Uri.fromFile( fTempCameraFullDirPath );
    Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
    cameraIntent.putExtra( MediaStore.EXTRA_OUTPUT, outputFileUri );
    startActivityForResult(Intent.createChooser(cameraIntent, getString(R.string.select_camera_app)), REQUEST_CODE_CAMERA); 

现在显然我没有得到这个代码,因为相机测试失败并且我禁用了按钮,但似乎只要我在我的 Nexus 7 桌子上安装了相机应用程序,我应该能够拍照。

有谁知道我可以用来在此平板电脑(或类似设备)上启用此功能的替代测试吗?

【问题讨论】:

    标签: android android-camera tablet


    【解决方案1】:

    您可以查看FEATURE_CAMERA_FRONT,因为 Nexus 7 只有一个前置摄像头。

    【讨论】:

      【解决方案2】:

      尝试检查 PackageManager.FEATURE_CAMERA_FRONTFEATURE_CAMERA,因为 Nexus 7 只有前置摄像头,而 Android 摄像头选择算法默认为后置摄像头。

      【讨论】:

        【解决方案3】:

        作为答案的更新:

        由于 API 级别 17,您还可以检查 PackageManager.FEATURE_CAMERA_ANY,它指示设备是否有任何摄像头,无论其位置如何。

        【讨论】:

          【解决方案4】:

          看着docs,它说 FEATURE_CAMERA 与背对屏幕的摄像头有关,它本质上是后置摄像头。所以理所当然它应该返回 false。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2021-10-31
            • 2015-06-13
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多