如何在Android Lollipop设备的二级SD卡中创建新文件?

时间:2015-02-26 08:36:00

标签: android android-5.0-lollipop android-external-storage mediamuxer

在我的应用中,我使用MediaMuxer创建视频文件。 MediaMuxer的构造函数需要输出文件的绝对路径。主存储一切正常,但对于二级存储应用程序不起作用。在我检查时,在Lollipop中,用户必须使用新的Intent ACTION_OPEN_DOCUMENT_TREE(How to use the new SD card access API presented for Android 5.0 (Lollipop)?)选择外部存储中的输出目录。 但是根据这个Intent的结果,我们得到了DocumentFile。我不知道如何使用MediaMuxer和此DocumentFile创建新的视频文件。有人能帮助我吗?

1 个答案:

答案 0 :(得分:1)

有一个方法createFile(String mimeType, String displayName) - 只需在DocumentFile目录实例上调用它:

DocumentFile newFile = documentFileDir.createFile("application/octet-stream", fileName);
OutputStream os = getContentResolver().openOutputStream(newFile.getUri());
... // write your data