一般判断是否有拍照权限(Android6.0之前的)的办法:
1.通过Camera.open()之后判断camera==null?
2.有些手机即使禁掉拍照权限获取到的camera也不为null(比如魅族),这时可以通过捕获camera.getParameters()产生的异常,来判断。
3.还有的(比如VIVO),在禁止拍照权限的情况下,camera!=null并且camera.getParameters()还捕获不到异常。但是通过对比授予和禁止权限之后得到的camera发现有一个mHasPermission的属性对应是否获取权限。但是没法直接获取到这个属性的值。所以通过反射获取。
网友评论