Android 6.0以后的版本报错:open failed: EACCES (Permission denied)

2024-03-20 18:38

本文主要是介绍Android 6.0以后的版本报错:open failed: EACCES (Permission denied),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

就上篇文章来说遇到的问题,在华为手机7.0上面,保存相册到手机没有任何问题,但是在我的小米手机保存就出现了这个问题

open failed: EACCES (Permission denied)

遇到事情不能慌,先冷静一下

思索再三觉得是没有动态申请但是7.0手机怎么可以呢?抽风啊,

百度一下吧参考这篇博文附上链接
Android 6.0以后的版本报错:open failed: EACCES (Permission denied) - 云+社区 - 腾讯云

于是我就按照上面操作了一番

步骤如下:

1.检查AndroidManifest.xml文件中是否配置了权限 

    <!-- 储存卡的读写权限 --><uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

2.是否创建了src/main/res/xml/network_security_config.xml

<?xml version="1.0" encoding="utf-8"?>
<network-security-config><base-config cleartextTrafficPermitted="true"><trust-anchors><certificates src="system" /><certificates src="user" /></trust-anchors></base-config>
</network-security-config>

3.针对10.0版本以上有个缓存区需要在AndroidManifest.xml文件的Application中添加
 

 android:requestLegacyExternalStorage="true"

4.看有的博文说需要将compileSdkVersion版本调制27以下(ps:我觉得不可行就没采取)
 

5.动态权限申请

 if (Build.VERSION.SDK_INT >= 23) {if (ActivityCompat.checkSelfPermission(PosterActivity.this, Manifest.permission.WRITE_EXTERNAL_STORAGE)!= PackageManager.PERMISSION_GRANTED) {// 申请一个(或多个)权限,并提供用于回调返回的获取码(用户定义)ActivityCompat.requestPermissions(PosterActivity.this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, REQUEST_STATE_CODE);} else {//通知图库更新String savePic = savePic(bitmap);//把获取到的Bitmap对象压缩图片保存到本地中sdcardimg_poster_bg.setImageBitmap(bitmap);//在把获取到的Bitmap对象在imageView中显示出来ToastUtil.showCenterToast("保存图片到相册成功");}} else {//通知图库更新String savePic = savePic(bitmap);//把获取到的Bitmap对象压缩图片保存到本地中sdcardimg_poster_bg.setImageBitmap(bitmap);//在把获取到的Bitmap对象在imageView中显示出来}
其实吧我加上这些之后还是给我提示权限问题,我就有点小慌了,起初我测试没问题打包让测试测,然后老大提出一些布局瑕疵,我就开始改,但是就出现了这个权限问题,改来改去的,最后一顿操作猛如虎,还是没有卵用,百度了好大一波,都是这个几个点,我就开始重启as,clean  甚至rebuild  不一会又好了  我也搞不懂了,其实吧这个点还是有效果的吧

 先这样吧,别的也不多说了

这篇关于Android 6.0以后的版本报错:open failed: EACCES (Permission denied)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/830389

相关文章

解决idea启动项目报错java: OutOfMemoryError: insufficient memory

《解决idea启动项目报错java:OutOfMemoryError:insufficientmemory》:本文主要介绍解决idea启动项目报错java:OutOfMemoryError... 目录原因:解决:总结 原因:在Java中遇到OutOfMemoryError: insufficient me

Android使用java实现网络连通性检查详解

《Android使用java实现网络连通性检查详解》这篇文章主要为大家详细介绍了Android使用java实现网络连通性检查的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录NetCheck.Java(可直接拷贝)使用示例(Activity/Fragment 内)权限要求

2025最新版Android Studio安装及组件配置教程(SDK、JDK、Gradle)

《2025最新版AndroidStudio安装及组件配置教程(SDK、JDK、Gradle)》:本文主要介绍2025最新版AndroidStudio安装及组件配置(SDK、JDK、Gradle... 目录原生 android 简介Android Studio必备组件一、Android Studio安装二、A

Python包管理工具uv下载python版本慢问题解决办法

《Python包管理工具uv下载python版本慢问题解决办法》uv是一个非常快的Python包和项目管理器,用Rust编写,使用热缓存安装Trio的依赖项的速度对比,:本文主要介绍Python包... 目录发现问题对于 MACOS / linux 用户 (zsh/bash):对于 Windows 用户:总

Python版本与package版本兼容性检查方法总结

《Python版本与package版本兼容性检查方法总结》:本文主要介绍Python版本与package版本兼容性检查方法的相关资料,文中提供四种检查方法,分别是pip查询、conda管理、PyP... 目录引言为什么会出现兼容性问题方法一:用 pip 官方命令查询可用版本方法二:conda 管理包环境方法

idea突然报错Malformed \uxxxx encoding问题及解决

《idea突然报错Malformeduxxxxencoding问题及解决》Maven项目在切换Git分支时报错,提示project元素为描述符根元素,解决方法:删除Maven仓库中的resolv... 目www.chinasem.cn录问题解决方式总结问题idea 上的 maven China编程项目突然报错,是

linux查找java项目日志查找报错信息方式

《linux查找java项目日志查找报错信息方式》日志查找定位步骤:进入项目,用tail-f实时跟踪日志,tail-n1000查看末尾1000行,grep搜索关键词或时间,vim内精准查找并高亮定位,... 目录日志查找定位在当前文件里找到报错消息总结日志查找定位1.cd 进入项目2.正常日志 和错误日

Android实现图片浏览功能的示例详解(附带源码)

《Android实现图片浏览功能的示例详解(附带源码)》在许多应用中,都需要展示图片并支持用户进行浏览,本文主要为大家介绍了如何通过Android实现图片浏览功能,感兴趣的小伙伴可以跟随小编一起学习一... 目录一、项目背景详细介绍二、项目需求详细介绍三、相关技术详细介绍四、实现思路详细介绍五、完整实现代码

在Android中使用WebView在线查看PDF文件的方法示例

《在Android中使用WebView在线查看PDF文件的方法示例》在Android应用开发中,有时我们需要在客户端展示PDF文件,以便用户可以阅读或交互,:本文主要介绍在Android中使用We... 目录简介:1. WebView组件介绍2. 在androidManifest.XML中添加Interne

Python一次性将指定版本所有包上传PyPI镜像解决方案

《Python一次性将指定版本所有包上传PyPI镜像解决方案》本文主要介绍了一个安全、完整、可离线部署的解决方案,用于一次性准备指定Python版本的所有包,然后导出到内网环境,感兴趣的小伙伴可以跟随... 目录为什么需要这个方案完整解决方案1. 项目目录结构2. 创建智能下载脚本3. 创建包清单生成脚本4