获取mp3文件的URI

时间:2015-12-29 18:29:36

标签: android android-intent

我知道这个问题被多次询问过。基本上,我试图从SD卡内存或手机内存中选择一个mp3文件。但是,当我在我的设备上尝试时,不能选择mp3文件。当我使用像文件管理器这样的第三方应用程序来选择mp3时,它可以工作。这是棒棒糖文件管理器的一些问题,还是我做错了?

fab.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {

            Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
            intent.setType("audio/mp3");
            startActivityForResult(Intent.createChooser(intent, "Music File"), 200);
        }
    });



@Override
    protected void onActivityResult(int reqCode, int resCode, Intent data) {


            if (resCode == Activity.RESULT_OK && data != null) {
                if (reqCode == 200) {
                    Uri audioFileUri = data.getData();
                    Toast.makeText(getApplicationContext(), audioFileUri.getPath().toString(), Toast.LENGTH_SHORT).show();

                }
               }
    }

编辑:

我的意思是不可选择(例如:下面的mp3文件是JustinTimberlake)是: iMAGE

2 个答案:

答案 0 :(得分:1)

mp3的mime类型是audio/mpeg。 你可以使用

intent.setType("audio/mpeg");

String mimeType = MimeTypeMap.getSingleton().getMimeTypeFromExtension("mp3");
intent.setType(mimeType);

答案 1 :(得分:0)

Intent automatic_intent = new Intent(Intent.ACTION_GET_CONTENT);
  automatic_intent.setType( “音频/ MPEG”);