微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何建立资料夹Android R-Api 30?

如何解决如何建立资料夹Android R-Api 30?

已阅读到Android 11具有范围存储,但是我找不到任何信息,如何在/storage/emulated/0/中创建和使用文件夹?旧方法仅适用于api 29及以下版本:(

解决方法

从 Android Q 开始,我们可以在应用程序特定存储中创建文件夹。它的路径:

Android->data->包名->files->你的文件夹

使用这个:

File file;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
    file = new File (this.getExternalFilesDir(null) + path);
} else {
    file = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + path);
}

if (!file.exists()) {
    file.mkdirs();
}
,

在Android 11上,Android 10中对访问外部存储的限制要少得多。

import cats.data.Writer
import cats.instances.vector._
import cats.instances.list._
import cats.instances.tuple._
import cats.Foldable
import cats.syntax.traverse._

val result1 = for {
  i <- Writer(Vector("hello"),Vector(1))
  j <- Writer(Vector("bye"),Vector(2))
} yield j

val result2 = for {
  x <- Writer(Vector("hi"),Vector(33))
  y <- Writer(Vector("ciao"),Vector(55))
} yield y

val l = Vector(result1,result2)

val result3 = l.flatSequence

println(result3.run) // (Vector(hello,bye,hi,ciao),Vector(2,55))

可以再次读取,并且

Environment.getExternalStorageDirectory()

对于Environment.getExternalStoragePublicDirectory(...) 等文件夹是可写的。

对于大多数目录中的文件,使用正确的扩展名对Android操作系统非常挑剔。

,

第1步:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

第2步:

Environment.getExternalStorageDirectory().absolutePath + "/your_folder_name"

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。