MediaPlayer mediaPlayer = null; System.out.println("---播放assest的资源文件----");
AssetManager assetManager = this.getAssets();
try {
AssetFileDescriptor fileDescriptor = assetManager
.openFd("/assets/mario.mid");
mediaPlayer = new MediaPlayer();
mediaPlayer
.setDataSource(fileDescriptor.getFileDescriptor(),
fileDescriptor.getStartOffset(), fileDescriptor
.getLength()); mediaPlayer.prepare();
mediaPlayer.start();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
一直报空指针,不知道怎么回事,路径绝对没有错,就不知道怎么回事,是不是要添加什么,求大神帮助小弟
AssetManager assetManager = this.getAssets();
try {
AssetFileDescriptor fileDescriptor = assetManager
.openFd("/assets/mario.mid");
mediaPlayer = new MediaPlayer();
mediaPlayer
.setDataSource(fileDescriptor.getFileDescriptor(),
fileDescriptor.getStartOffset(), fileDescriptor
.getLength()); mediaPlayer.prepare();
mediaPlayer.start();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
一直报空指针,不知道怎么回事,路径绝对没有错,就不知道怎么回事,是不是要添加什么,求大神帮助小弟
setDataSource可以只设置第一个参数fd,后面的参数不需要设置。
.openFd("/assets/mario.mid");
修改
.openFd("mario.mid");