android - 我们如何在 Android 11 的下载文件夹中写入 M3u 文件
问题描述
我正在尝试将 m3u 文件保存在 Android 11 的下载文件夹中
这是我指的代码
特别是这部分代码
BufferedWriter bw = new BufferedWriter(new FileWriter(file));
bw.write(HEADER);
for (Song song : songs) {
bw.newLine();
bw.write(ENTRY + song.duration + DURATION_SEPARATOR + song.artistName + " - " + song.title);
bw.newLine();
bw.write(song.data);
}
bw.close();
由于 Android 11 的限制,我想将文件保存到 Downloads 文件夹
使用此代码
ContentResolver resolver = context.getContentResolver();
ContentValues contentValues = new ContentValues();
contentValues.put(MediaStore.MediaColumns.DISPLAY_NAME, "PlayListOwn");
contentValues.put(MediaStore.MediaColumns.MIME_TYPE, "application/my-custom-type");
contentValues.put(MediaStore.MediaColumns.RELATIVE_PATH, Environment.DIRECTORY_DOWNLOADS);
Uri uri = resolver.insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, contentValues);
请提供Java解决方案而不是 kotlin 谢谢。
解决方案
推荐阅读
- image - 组装大量 PImage 无法正常工作
- java - 如何从非 EMR 节点访问 S3 上的 Hbase
- javascript - 无法从 Lambda 函数中的 Promise 接收/发送响应
- postgresql - Postgres - 带有交叉表的部分枢轴
- node.js - 使用 webpack 在 monaco-editor 包中构建字体文件
- java - 如何在 SpringBoot 中使用另一个实体搜索一个实体(在地图中)?
- header-files - 在 C++ 中列出所有当前导入的标头(包含)
- python - 如何使用字典中的键作为索引创建 pandas DataFrame?[蟒蛇,熊猫]
- angularjs - Angularjs - 如何防止多次评估相同的观察表达式?
- terraform - terraform init 步骤与“没有可用的版本匹配给定的约束〜> 2.1.28”