在安卓Q(10)上 *** 作文件读写时遇到的问题,进行记录。

在安卓Q(10)上 *** 作文件读写时遇到的问题,进行记录。,第1张

概述获取到file的对象之后,调用createNewFile 方法尝试在指定目录下生成一个文件并往文件中写入内容,同样的方法之前在android9及以前版本都没问题,在网上查找了之后基本都指向了权限问题。后经查找网上蛮多介绍这个问题的,androidQ对于文件读写引入了新特性,在这个版本中,READ_EXTERNAL

获取到file的对象之后,调用 createNewfile 方法尝试在指定目录下生成一个文件并往文件中写入内容,同样的方法之前在androID9及以前版本都没问题,在网上查找了之后基本都指向了权限问题。

后经查找网上蛮多介绍这个问题的,androID Q对于文件读写引入了新特性,在这个版本中,READ_EXTERNAL_STORAGE和WRITE_EXTERNAL_STORAGE均受到了限制,无法再像之前的版本直接获取到文件。如果希望恢复之前的权限逻辑,可以在manifest文件中设置:

androID:requestLegacyExternalStorage="true"
即可解决(但不确定这种方法是不是临时的方法,有可能后面谷歌会干掉这种方式也说不定)。

另外,还可以通过StorageManager的getPrimaryStorageVolume().createopendocumentTreeIntent()方法来进行 *** 作,这个方法没有办法通过file类来 *** 作文件,但是可以使用类似的documentfile

1 <application2         androID:sharedUserID="androID.uID.system"3         androID:allowBackup="true"4         androID:icon="@mipmap/ic_launcher"5         androID:label="@string/app_name"6         androID:roundIcon="@mipmap/ic_launcher_round"7         androID:supportsRtl="true"8         androID:requestLegacyExternalStorage="true"9         androID:theme="@style/Apptheme">

然后重新编译apk,安装打开apk,正常在指定目录下生成了对应文件

总结

以上是内存溢出为你收集整理的在安卓Q(10)上 *** 作文件读写时遇到的问题,进行记录。全部内容,希望文章能够帮你解决在安卓Q(10)上 *** 作文件读写时遇到的问题,进行记录。所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1064473.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存