标签:
在一个项目中,由于没有对应用是否获取相机权限做出判断,开发自测时没有做没有权限时的测试。当测试人员测试的时候发现当没有相机权限的时候,执行调用相机的操作应用异常退出。测试把报的什么错误都反馈给开发人员了。。。
测试人员都这么专业啦,要我们还怎么活。。。。。
看反馈的log是因为:camera has no permission to startPreview。是因为startPreview没有相机权限,也就是用户把应用的相机权限禁止啦。所以,要增加一个应用是否获取相机权限的判断,如果没有权限给用户友好提示等:
PackageManager pkm = getPackageManager(); boolean has_permission = (PackageManager.PERMISSION_GRANTED == pkm.checkPermission("android.permission.RECORD_AUDIO", "packageName")); if (!has_permission) { showToast("对不起,没有拍照权限!"); }
当加上权限的判断后,就不会再出现异常退出问题。有人提出捕捉异常,来解决异常退出问题,但是考虑效率的问题,最好不要捕捉异常。
在这里,只写到相机权限的判断,别的权限应该相仿,就不一一做实验来测试啦。
标签:
原文地址:http://my.oschina.net/deepSprings/blog/499562