我需要允许用户从他的媒体库中选择一些音频文件。
这是我正在尝试做的事情:
Intent tmpIntent = new Intent(
Intent.ACTION_PICK,
android.provider.MediaStore.Audio.Media.EXTERNAL_CONTENT_URI
);
startActivityForResult(tmpIntent, 0);
但我得到错误:
08-20 17:44:35.444: E/AndroidRuntime(3773): android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.PICK dat=content://media/external/audio/media }
为了安全起见,我也尝试过INTERNAL_CONTENT_URI
,但结果相似。
我怎样才能做到这一点?
UPD:顺便说一句,如果我尝试通过 URI 来获取图像(即android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI
),那么它可以工作:打开图像打开对话框。
UPD2:刚刚在模拟器上尝试过 - 我的代码有效!但在两台设备上却没有(SE Xperia Neo 和一些宏碁)。但是,如果我尝试这个答案的第二个变体,那么我会得到包含所有现有文件管理器的菜单,以及“音乐选择”!但我需要写意图只是为了打开这个“音乐选择”。