我是一款声音板应用的开发者。许多用户向我报告说,在他们的手机上,某些声音会提前截断。我有一个 Nexus One 和一个 HTC Tattoo,一切都正常,我从未在我的手机上注意到这种情况。
以下是我音频部分的代码:
首先,在我的主类中有一个 MediaPlayer 对象:
private MediaPlayer mp = null;
当我按下一个按钮时,这是代码:
private OnClickListener onClickSound = new OnClickListener() {
public void onClick(View v) {
if(mp != null){
mp.stop();
mp.release();
mp = null;
}
mp = MediaPlayer.create(getBaseContext(), mp3id));
mp.start();
mp.setOnCompletionListener(completionListener);
}
};
这是completionListener:
MediaPlayer.OnCompletionListener completionListener = new MediaPlayer.OnCompletionListener(){
public void onCompletion(MediaPlayer mediaP) {
if(mp != null && !mp.isPlaying()){
mp.stop();
mp.release();
mp = null;
}
}
};
你们有什么线索吗?
问候