我想在VideoView中播放vimeo视频,但这里有问题。
在桌面下载视频的步骤如下(基于ossguy.com脚本):
vimeo.com/XXXClip_id
(已通过67216430测试)player.vimeo.com/play_redirect?clip_id=XXXClip_id&sig=5e23c571c4032abd7507368237f43a2a&time=1378707147&quality=hd&&codecs=H264,VP8,VP6&type=moogaloop_local&embed_location=
的形式发送请求(上面获取的时间和时间)我想在android中重复相同的步骤,因为从上一步获得的URL可以用VideoView播放。但问题是当从步骤3发送相同的请求时,响应不包含“位置”标题。有什么想法吗?
答案 0 :(得分:1)
如果有人需要回答,我发布了我的解决方案。 下面是我的函数httpRequest(),我在每个步骤中都使用它来获取页面和响应头。我假设我在使用DefaultHTTPClient时遇到重定向问题,因为“Location”标题将在步骤3中给出,实际应该重定向。
public URLConnection httpRequest(String path) {
HttpURLConnection conn = null;
try {
URL url = new URL(path);
conn= (HttpURLConnection) url.openConnection();
conn.setInstanceFollowRedirects(false); //you still need to handle redirect manully.
HttpURLConnection.setFollowRedirects(false);
conn.setReadTimeout(5000);
conn.addRequestProperty("Accept-Language", "en-US,en;q=0.8");
conn.addRequestProperty("User-Agent", "Mozilla/5.0");
conn.addRequestProperty("Referer", "google.com");
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return conn;
}
答案 1 :(得分:-2)
在android中
首先在项目中添加io.vov.vitamio.widget
包。
然后在xml
布局文件...
然后在您的java文件中使用此代码。确保您要导入vimeo包中可用的包
videoView.setVideoURI(Uri.parse(路径));
videoView.setMediaController(new MediaController(this));
videoView.requestFocus();
videoView.start();