0

我试图在创建方法中获取相机实例,Camera.open()用于显示相机预览。但有时它返回 null。我该如何处理这个问题。

我已在manifest文件中给予许可。

<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
4

2 回答 2

1

观看 logcat 应该会有所帮助。如果它不能打开相机,它应该只返回 null,因为另一个活动正在积极使用它并且没有释放它。

出于同样的原因,您应该在 onPause 方法中释放相机。

于 2013-01-04T02:46:47.130 回答
0

尝试调试您的应用程序并尝试捕捉此方法返回 null 的那一刻,这可能会给您一些更新。

还要"android:required="true"为您的uses-feature标签指定,这将确保应用程序仅在相机可用时运行。

由于文档状态open()仅在相机不可用时才返回 null,因此这将检查它是否不是硬件问题。

如果设备没有后置摄像头,则返回 null。(文档

于 2013-01-03T18:42:39.587 回答