Android java.io.FileNotFoundException:*** (Permission denied)

自从离开上海来到杭州以后,陆续接触了Android,Python,C++,OpenCV,最为一个新人来讲,一路上遇到了不少坑,幸运的是 这互联网的强大(大傻子我仍是蛮喜欢的哈),一路填填补补总算走了下来。 一直就有把本身这几个月来遇到的问题记录下来的想法,苦于没有时间(其实就是本身太懒),业精于勤荒于嘻,就以这个刚刚解决的问题做为开始吧。java

接下来是正文啦~~~ 你们都知道,Android 6.0中,某些权限属于Protected Permission,例如:读写手机存储权限,仅仅在AndroidManifest.xml中申明是没法真正获取到权限的,打开手机的权限管理页面,咱们能够看见,读写手机存储权限栏是一个问号,这意味着App并未获取到该权限。 这是访问手机存储时,会报出相似下面的错误: java.io.FileNotFoundException:*** (Permission denied) 有一个简单粗暴的方法,就是在App安装完成以后,手动在手机上将该权限改成容许。可是这种方法太low了,给用户带来的体验也不好。咱们但愿经过代码动态的获取此权限,用户只须要在第一次安装时,在弹出的窗口点击一下容许,就能够啦。 实现代码:ui

if (Build.VERSION.SDK_INT >= 23) {
        int REQUEST_CODE_CONTACT = 101;
        String[] permissions = {Manifest.permission.WRITE_EXTERNAL_STORAGE};
        //验证是否许可权限
        for (String str : permissions) {
        if (this.checkSelfPermission(str) != PackageManager.PERMISSION_GRANTED) {
             //申请权限
                this.requestPermissions(permissions, REQUEST_CODE_CONTACT);
            }
        }
    }

PS:其它的权限小伙伴们就能够以此类推啦。this

相关文章
相关标签/搜索