我正在尝试为Android 4.2.2做一个应用程序。它只需要在android视频内的无限循环中播放一些静音视频。
它工作正常,但有时,我得到一个“无法播放此视频”弹出窗口,尽管我看到该弹出窗口下播放的视频。我的应用程序应该在没有任何输入法的情况下运行,所以......¿有没有机会避免弹出窗口?它似乎随机发生,有时在30-40分钟之后,有时在几个小时之后......它只是不可预测。
我试着调试它,最后添加一个onInfoListener,好像我得到了错误代码(952)。此外,我没有找到任何有关该错误的帮助...这是代码...任何提示/帮助都非常好,所以提前谢谢你...
...
MediaPlayer.OnPreparedListener PreparedListener = new MediaPlayer.OnPreparedListener(){
@Override
public void onPrepared(MediaPlayer m) {
try {
if (m.isPlaying()) {
m.stop();
m.release();
m = new MediaPlayer();
m.setVolume(0f, 0f);
}
m.setLooping(false);
m.start();
} catch (Exception e) {
e.printStackTrace();
}
}
};
video.setOnPreparedListener(PreparedListener);
video.setOnInfoListener(new MediaPlayer.OnInfoListener() {
@Override
public boolean onInfo(MediaPlayer mp, int what, int extra) {
File file = new File(myRootDirectory.getAbsolutePath()+"/logVideo.txt");
SimpleDateFormat s = new SimpleDateFormat("dd-MM-yyyy//HH:mm:ss");
String format = s.format(new Date());
String text = format+": ("+what+","+extra+")\n";
if(what==952){
text = "!!!!!!!!!!\n"+text; //What is this code 952...??
}
FileOutputStream f = null;
try {
f = new FileOutputStream(file,true); //True = Append to file, false = Overwrite
PrintStream p = new PrintStream(f);
p.print(text);
p.flush();
p.close();
f.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
Log.i("Error", "******* File not found. Did you" +
" add a WRITE_EXTERNAL_STORAGE permission to the manifest?");
} catch (IOException e) {
e.printStackTrace();
}
Log.d("INFO LISTENER",what+" " + extra);
return false;
}
});
video.setVideoPath(nextVideo);
答案 0 :(得分:0)
也许其中一个标准的“什么”常量拼写错误?您可能会尝试匹配已知的“what”代码(MEDIA_INFO_BAD_INTERLEAVING等)。