Android视频播放器问题

Android视频播放器问题,android,video,Android,Video,我已经用android编写了视频播放器代码。但我面临的一个问题是,当我调试代码时,视频播放正常,但当我运行这个程序时,视频并没有出现,只有声音可以听 任何帮助都将不胜感激 这是我的视频播放器的主要方法 private void playVideo(String url) { try { media.setEnabled(false); if (player==null) { player=new MediaPlayer(); player.set

我已经用android编写了视频播放器代码。但我面临的一个问题是,当我调试代码时,视频播放正常,但当我运行这个程序时,视频并没有出现,只有声音可以听

任何帮助都将不胜感激

这是我的视频播放器的主要方法

private void playVideo(String url) 
 {
  try 
  {
   media.setEnabled(false);
   if (player==null) 
   {
    player=new MediaPlayer();
    player.setScreenOnWhilePlaying(true);
    //player.reset();
   }
   else 
   {
    player.stop();
    player.reset();
   }
   player.setOnErrorListener(this);
   player.setDataSource(url);
   player.setDisplay(holder);
   player.setAudioStreamType(AudioManager.STREAM_MUSIC);
   player.setOnPreparedListener(this);
   player.prepareAsync();
   player.setOnBufferingUpdateListener(this);
   player.setOnCompletionListener(this);
  }
  catch(IllegalStateException ex)
  {   
   try
   {
    player.reset();
    player.setOnErrorListener(this);
    player.setDataSource(url);
    player.setDisplay(holder);
    player.setAudioStreamType(AudioManager.STREAM_MUSIC);
    player.setOnPreparedListener(this);
    player.prepareAsync();
    player.setOnBufferingUpdateListener(this);
    player.setOnCompletionListener(this);
   }
   catch(Exception ex1)
   {
    ex1.printStackTrace();
   }
  }
  catch (Throwable t) 
  {
   Log.e(TAG, "Exception in media prep", t);
   goBlooey(t);
  }
 }

如果播放的是音频而不是视频,则您可能没有正确设置surface支架,如MediaPlayer文档所示:

公共void设置显示(SurfaceHolder) (上海)

设置要用于的SurfaceHolder 显示视频的视频部分 媒体此呼叫是可选的。不 播放视频时调用它 将只产生音频曲目 正在玩

参数sh-要设置的曲面文件夹 用于视频显示

也许您需要在onCreate()中执行以下操作:


如果播放的是音频而不是视频,则您可能没有正确设置surface支架,如MediaPlayer文档所示:

公共void设置显示(SurfaceHolder) (上海)

设置要用于的SurfaceHolder 显示视频的视频部分 媒体此呼叫是可选的。不 播放视频时调用它 将只产生音频曲目 正在玩

参数sh-要设置的曲面文件夹 用于视频显示

也许您需要在onCreate()中执行以下操作:

mPreview = (SurfaceView) findViewById(R.id.surface);
holder = mPreview.getHolder();