全屏播放video

我正在尝试在我的应用中播放video。 它必须嵌入。

我浏览了“在Android中播放video文件”主题。

我可以使用VideoView播放我的video,如本讨论中所述。 但是有一些问题。

  1. 我需要全屏video,如何将VideoView拉伸到全屏? 这会延长video吗?

  2. 我根本不需要默认的播放/前进/停止按钮。 基本上我需要连续循环播放video。

我在这里尝试了MediaPlayer类,但它从未奏效。 如果我的video文件在res / raw目录中,字符串格式应该是什么样的? 我真的不希望从SD卡播放video文件。 它如何与应用程序捆绑在一起?

如果这两种方法中的任何一种都有效,我会更好。

这是我的代码:

videoHolder = new VideoView(this); // videoHolder = (VideoView)findViewById(R.id.videoview); LayoutParams params = new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT); videoHolder.setLayoutParams(params); videoHolder.setMediaController(new MediaController(this)); setContentView(videoHolder); // // //// I tested and found that it works fine for .wmv, .3gp and .mp4 //// videoHolder.setVideoURI(Uri.parse("file:///sdcard/video.3gp")); videoHolder.setVideoURI(Uri.parse("res/raw/demo.3gp")); videoHolder.requestFocus(); videoHolder.start(); 

奇怪的是,评论的url是有效的(带有sdcard的url)。 另一个不起作用。 我尝试了很多从“file:// res / raw / demo.3gp”到“demo”的组合。

访问该文件的正确字符串是什么?

无需进行任何编码即可将video播放到全屏模式

在包含videoview的xml上应用以下布局格式,它肯定会以全屏模式播放video。 因为它正在运行我的。 :) 希望能帮助到你

  < ?xml version="1.0" encoding="utf-8"?>     

另外,添加mediacontroller还可以让你使用控制器。

我已经解决了这个问题:

1.要删除继续/暂停按钮,请删除媒体控制器。 对于循环问题,请放置OnCompletionListener以便在video到达结尾时再次启动:

 videoView.setOnCompletionListener( new MediaPlayer.OnCompletionListener() { public void onCompletion(MediaPlayer mp) { videoView.start(); } }); 

2.要调整video大小,请在VideoView覆盖onMeasure()方法,如下所示:

 public class MyVideoView extends VideoView { public MyVideoView(Context context) { super(context); } @Override protected void onMeasure (int widthMeasureSpec, int heightMeasureSpec) { setMeasuredDimension(480,800); } } 

我知道这个post已经有几周了,但你不必将video文件复制到SD卡上就可以播放了。 使用以下内容但插入您的包名称而不是“com.yourcompany.yourproject”:

videoView.setVideoURI(Uri.parse("android.resource://com.yourcompay.yourproject/" + R.raw.yourvideoresource));

如果您想全屏播放video,只需在Androidmanifest.xml文件中,在此video播放的活动中添加这些代码。 只需在android清单文件中添加这两行。

  android:theme="@android:style/Theme.NoTitleBar.Fullscreen" android:configChanges="orientation|screenSize" 

就像在我的androidmanifest.xml文件中一样,我添加了它

        

修改了@Javanator的答案,这不会延长video:

 < ?xml version="1.0" encoding="utf-8"?>     

希望这有助于某人:)