Android 如何打开外部音乐播放器(如Pulsar、Retro音乐播放器)并播放我从listview中选择的歌曲?

Android 如何打开外部音乐播放器(如Pulsar、Retro音乐播放器)并播放我从listview中选择的歌曲?,android,listview,audio,onclicklistener,Android,Listview,Audio,Onclicklistener,我在listview中有来自内部存储的歌曲列表,现在我添加了以下代码: Intent intent = new Intent(Intent.ACTION_VIEW); intent.setDataAndType(FileProvider.getUriForFile(parent.getContext(), BuildConfig.APPLICATION_ID + ".provider", file), "audio/*"); intent.setFlags(Intent.

我在listview中有来自内部存储的歌曲列表,现在我添加了以下代码:

    Intent intent = new Intent(Intent.ACTION_VIEW);
    intent.setDataAndType(FileProvider.getUriForFile(parent.getContext(), BuildConfig.APPLICATION_ID + ".provider", file), "audio/*");
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

    try {
        MainActivity.this.startActivity(intent);
    }
    catch (ActivityNotFoundException e)
    {
        Toast.makeText(parent.getContext(),"Music player not found", Toast.LENGTH_SHORT).show();
    }
它只打开音乐播放器,不播放所选项目(歌曲)。
现在,我要怎么做才能演奏这首歌呢?

最后,我发现了我的错误

我不得不使用

intent.setDataAndType(Uri.fromFile(file), "audio/*");
而不是

intent.setDataAndType(FileProvider.getUriForFile(parent.getContext(), BuildConfig.APPLICATION_ID + ".provider", file), "audio/*");
因为“Fileprovider”仅用于从应用程序安装apk