| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 移动开发 -> Android11 往内存中写txt文件 -> 正文阅读 |
|
[移动开发]Android11 往内存中写txt文件 |
谨以此篇来记录往Android内存中写txt文件踩过的坑. 一 申请权限????????当你无法将txt文件写不进去的时候,大部分人会说你没有动态申请权限啊啥啥的,而且网上动态申请权限的方法每个人写的不尽相同,大部分的做法是申请权限,然后去check下是否申请了,授权了咋办,拒绝了咋办........ ????????但有的时候,你写不进去他不一定是因为你没有动态申请权限啊,然后你就按那个人的弄弄,复制下那个人的.....陷入下面的循环中.......
????????一定要对自己的申请权限的代码有信息,写不进去有可能不是因为我的权限申请有问题,只要app赋予了下面俩权限,就要考虑是不是不是权限的问题 Manifest.permission.WRITE_EXTERNAL_STORAGE,Manifest.permission.READ_EXTERNAL_STORAGE ????????前面说了,动态申请权限网上的方法不尽相同,直到遇到郭大神的? ? permissionx 如何使用 permissionx? ? ? ? 这有一链接permissionx的仓库地址? ?? ????????然后将内容复制待build.gradle中的依赖中,如图所示: ?然后在MainActivity.java中添加申请权限的代码(这就是郭神的代码):
二 往内存里写txt文件????????这有一函数:
第一个参数是文件名,带后缀,比如"test.txt",第二个参数是要写入的内容,第三个参数为是否追加. 其实关键的是看第一句: File file = new File( getFilesPath(MainActivity.this) + "/" + mFileName); 为何文件目录是getFilesPath(MainActivity.this)而不是我们熟悉的 Environment.getExternalStorageDirectory() 或者说二者有何区别?
前者是获取的app的目录,一般放在了Android/data/com/啥啥啥. 后者是获取的手机根目录,文件存放在了打开手机目录就可以看到的地方 你可能会问,啥时候用前者,啥时候用后者?? ?这里就要看build.gradle文件中的内容了. ?一般情况下,只要保证? ? ?minSdk<targetSdk<=compileSdk就可以. 但是,如果你写不进去根目录,你还不想改targetSdk的版本,你可以考虑往手机app目录下写,看看能否写进去. 如果,你就想写进去根目录,那你就可以考虑将targetSdk将降,一般26-29就很有可能出现奇迹 上面说的解决方法一般是遇到以下两种问题的时候可以尝试去解决 问题一:在已经申请权限了,但还是出现: ?此时这两种方法都可以尝试下,我试过的都是可以解决的. 最后提一嘴,不要忘了尝试下在<application标签中加 ?android:requestLegacyExternalStorage=“true“ |
|
移动开发 最新文章 |
Vue3装载axios和element-ui |
android adb cmd |
【xcode】Xcode常用快捷键与技巧 |
Android开发中的线程池使用 |
Java 和 Android 的 Base64 |
Android 测试文字编码格式 |
微信小程序支付 |
安卓权限记录 |
知乎之自动养号 |
【Android Jetpack】DataStore |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 20:50:02- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |