我们的应用程序作为后台服务运行,不断从前置摄像头获取图像,然后对图像进行处理。然而,当用户尝试打开另一个使用相机的应用程序时,会发生两种情况:要么新应用程序崩溃而我们的应用程序继续运行,要么我们崩溃而新应用程序可以访问相机。
现在,如果我们的应用程序失去了对相机的控制,我们可以捕获一个异常,然后我们可以开始尝试访问它,直到我们获得访问权限并且一切恢复正常。
问题是当其他应用程序因为我们的应用程序而崩溃时。有没有什么方法可以检测到这一点,以便我们可以暂停我们的应用程序,直到我们可以再次访问相机?
发生这种情况是因为相机是专有资源。
我建议您阅读相机文档 https://developer.android.com/guide/topics/media/camera.html#release-camera,其中说:
如果您的应用程序没有正确释放相机,所有
随后尝试访问相机,包括您自己的尝试
应用程序将失败并可能导致您或其他应用程序
关闭。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)