Android 声音:应已设置字幕控制器
我有一个奇怪的问题,我的音频文件有时播放,有时不播放 问题是,当LogCat决定不玩时,它会给我以下信息:Android 声音:应已设置字幕控制器,android,eclipse,android-mediaplayer,Android,Eclipse,Android Mediaplayer,我有一个奇怪的问题,我的音频文件有时播放,有时不播放 问题是,当LogCat决定不玩时,它会给我以下信息: Should have subtitle controller already set 这是我播放声音的代码: public void sound(){ //store the sound file name String filename=f_fruit_ar.m4a; //All sounds stored in assets folder try{
Should have subtitle controller already set
这是我播放声音的代码:
public void sound(){
//store the sound file name
String filename=f_fruit_ar.m4a;
//All sounds stored in assets folder
try{
AssetFileDescriptor afd = getAssets().openFd(filename);
MediaPlayer player = new MediaPlayer();
player.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength());
player.prepare();
player.start();
}
});
}
catch (Exception e) {
e.printStackTrace();
}
}
我认为问题在于玩家玩完游戏后你没有释放资源,你需要释放资源 示例:
public void sound(){
//store the sound file name
String filename=f_fruit_ar.m4a;
//All sounds stored in assets folder
try{
AssetFileDescriptor afd = getAssets().openFd(filename);
MediaPlayer player = new MediaPlayer();
player.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength());
player.prepare();
player.start();
player.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
player.release();
}
});
}
catch (Exception e) {
e.printStackTrace();
}
}
我认为问题在于玩家玩完游戏后你没有释放资源,你需要释放资源 示例:
public void sound(){
//store the sound file name
String filename=f_fruit_ar.m4a;
//All sounds stored in assets folder
try{
AssetFileDescriptor afd = getAssets().openFd(filename);
MediaPlayer player = new MediaPlayer();
player.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength());
player.prepare();
player.start();
player.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
player.release();
}
});
}
catch (Exception e) {
e.printStackTrace();
}
}