我有一个按钮,我想打开任何文件管理器,并允许用户只选择音频文件。所以我写了这样的话:
Intent intent = new Intent();
intent.setType("audio/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent, "Select audio", SELECTED_AUDIO);
然而,这不起作用 - 它打开文件管理器(在我的情况下是Astro)和voalaaa - 我可以看到并选择我想要的任何文件 - 我的意思是,文本文件,视频文件等。简单它没有'过滤或检查任何东西......我做错了什么?还是Astro的错?我只想显示音频文件,或显示所有文件,但只允许选择音频。
答案 0 :(得分:3)
我做错了什么?
没有
或者Astro的错?
排序。您假设Astro知道其所有文件的MIME类型,并且它实际上将使用MIME类型来过滤结果。没有什么能迫使Astro做其中任何一件事。任何文件管理器或响应ACTION_GET_CONTENT
audio/*
的任何其他内容也是如此。现在,如果Astro会进行过滤或其他事情,那将是很好,但这是一个你必须要考虑它们的问题。