Android 上原始文件夹和 SD 卡之间的 MediaPlayer 问题
我正在制作一个用于使用搜索栏播放歌曲的应用程序。如果我从原始文件夹播放,它可以工作,但如果我从 SD 卡播放歌曲,它会显示空指针异常。
private MediaPlayer mediaPlayer;
mediaPlayer = MediaPlayer.create(this, R.raw.t1); // it works
// switch to sdcard
mediaPlayer.setDataSource("/sdcard/t1.mp3"); // null pointer exception.
我不知道是什么问题。请帮我。
I am making an app for playing songs with a seek bar. If I play from the raw folder it works but if I play a song from the sdcard it shows a null pointer exception.
private MediaPlayer mediaPlayer;
mediaPlayer = MediaPlayer.create(this, R.raw.t1); // it works
// switch to sdcard
mediaPlayer.setDataSource("/sdcard/t1.mp3"); // null pointer exception.
I do not know what is the problem. Please help me.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您需要确保为
setDataSource()
提供的路径是完全正确的。执行此操作的最佳方法是使用
android.os.Environment.getExternalStorageDirectory()
,而不是硬编码对“/sdcard/”的引用。尝试一下,我认为这会对您有所帮助
,希望如此帮助你
You need to make sure the path you give to
setDataSource()
is exactly correct. The best way to do this, instead of hardcoding the reference to '/sdcard/', is to use
android.os.Environment.getExternalStorageDirectory()
Try this, I think it will help you
I hope this help you