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