我正在创建一个简单的应用程序,我想播放声音。按下应用程序上的按钮播放它将播放声音。 为了播放我正在使用的声音:
MediaPlayer mediaPlayer;
mediaPlayer = MediaPlayer.create(this, R.raw.test_cbr);
mediaPlayer.setOnCompletionListener(new OnCompletionListener()
{
@Override
public void onCompletion(MediaPlayer mp)
{
// TODO Auto-generated method stub
Toast.makeText(getApplicationContext(), "Completed",
Toast.LENGTH_LONG).show();
}
});
mediaPlayer.start();
它运作正常。
但是现在我希望用户能够从设备中选择一个音频文件,这样当他或她按下播放按钮时,应该播放所选择的声音。
我没有得到像图像一样的任何意图动作。
Intent photo_picker_intent = new Intent(Intent.ACTION_PICK);
photo_picker_intent.setType("image/*");
startActivityForResult(photo_picker_intent, PHOTOS_FROM_GALLERY);
在上面的代码中,用户只需转到图库。单击任何图像后,他或她将获得可用于在应用程序中显示图像的图像URI。我想做同样的事情,除了选择音频文件。
答案 0 :(得分:16)
只需使用这两行,
Intent intent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Audio.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(Intent.createChooser(intent, "Gallery"), reqCode);
或者,
Intent intent = new Intent();
intent.setType("audio/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent,"Select Audio "), reqCode);