我正在尝试使用Camera.open()
在on-create方法中获取相机实例以显示相机预览。但有时它会返回null。如何处理此问题。
我已在manifest
档案中获得了许可。
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
答案 0 :(得分:1)
观看logcat应该有所帮助。如果它无法打开相机,它应该只返回null,因为另一个活动正在积极使用它并且尚未释放它。
出于同样的原因,您应该在onPause方法中释放相机。
答案 1 :(得分:0)
尝试调试应用程序并尝试捕获此方法返回null时的那一刻,这可能会为您提供一些更新。
同时为"android:required="true"
标记指定uses-feature
,这样可确保只有在相机可用时才会运行该应用。
由于文档状态open()
仅在相机不可用时才返回null,因此这将检查它是否不是硬件问题。
如果设备没有后置摄像头,则返回null。 (Documentation)