我在listview中有来自内部存储的歌曲列表,现在onItemClickListener我添加了以下代码:
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();
}它只是打开音乐播放器,不播放选定的项目(歌曲)。现在,我要怎么做才能播放这首歌?
发布于 2018-08-11 23:09:02
最后,我发现了我的错误,
我不得不用
intent.setDataAndType(Uri.fromFile(file), "audio/*");而不是
intent.setDataAndType(FileProvider.getUriForFile(parent.getContext(), BuildConfig.APPLICATION_ID + ".provider", file), "audio/*");因为'Fileprovider‘只用于从你的应用程序安装apk。
https://stackoverflow.com/questions/51798632
复制相似问题