Camera 权限问题

自己编写app,app中使用 camera ,出现如下问题:

05-12 17:14:36.892 7012-7012/com.example.admin.mycamera W/CameraBase: An error occurred while connecting to camera 0: Service not available
05-12 17:14:36.894 7012-7012/com.example.admin.mycamera W/System.err: java.lang.RuntimeException: Fail to connect to camera service
05-12 17:14:36.895 7012-7012/com.example.admin.mycamera W/System.err: at android.hardware.Camera.(Camera.java:657)

网络查找解决方法有如下:
1. 手机安装有安全管家软件,camera 权限被 手机安全管家软件拒绝了;
解决方法:在手机安全管家软件中,降低一下camera的安全级别,或把自己的APP添加到白名单中。
2. AndroidManifest.xml 中没有添加 camera 权限申请
解决方法:添加权限

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

3. 对于之前打开的camera 没有释放掉
解决方法:打开前先释放
mCamera.stopPreview();
mCamera.release();
mCamera = null;
然后在打开 mCamera = Camera.open(cameraId);
4. 内存占用过多,导致自己的应用可分配的内存不足;但是 该场景主要是在自己的应用中打开摄像头,对摄像头取得的每一帧数据都进行额外的处理,随着处理次数的增加,如果有没被及时销毁的对象存在,则就极有可能会导致本文开头出现的异常了
解决方法:仔细检查临时创建的对象是否都已经释放掉

我的问题
5. 上面的都检查了一遍,还是不行;最后发现还是权限问题
解决方法:进入手机设置,找到对应app;设置->应用->权限,打开需要的权限

参考文献
https://blog.csdn.net/e0wangluo/article/details/62422532

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值