gpt4 book ai didi

java - Android 文件隐藏在外部存储上

转载 作者:行者123 更新时间:2023-12-01 13:21:28 27 4
gpt4 key购买 nike

我正在将文件写入 Android 上的外部存储。当我使用 ap ES 文件资源管理器浏览到位置时,该文件会显示在我的设备中。

但是当我将设备插入 Windows 时,该文件没有显示。

此外,如果我将名为“test.wav”的空文件写入“铃声”文件夹,则我的铃声设置中不会显示 test.wav。

但是,如果我在 Windows 中创建一个名为“test.wav”的空文件,并将其拖放到“铃声”文件夹中,那么它将正确显示在设置中的铃声浏览器中。

我使用的代码如下。

File file = new File(Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_RINGTONES), "testfile.wav");
file.setReadable(true);

try {
FileOutputStream fileOut = new FileOutputStream(file);
stream = new DataOutputStream(fileOut);
stream.flush();
stream.close();
//this code successfully creates a file
// but file is not viewable by all means

} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

最佳答案

Android 使用表来跟踪图像、视频、声音等,这些表称为“内容提供程序”,例如它使用 MediaStore.Images.Media.DATA对于图像请注意,这些表用于 View ,这说明了为什么只能使用 ES 来查看它。当您手动添加新文件时,您需要在相应的表中添加该文件的条目,或者在添加声音文件的情况下刷新您的音乐库,但是当您使用 Windows 添加文件时,设备的驱动程序会自动更新其表。如果可以解决问题,请尝试刷新您的音乐应用程序,甚至重新启动手机,更新您的内容提供商就是解决方案。

关于java - Android 文件隐藏在外部存储上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22001401/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com