【问题标题】:Android vimeo video downloaderAndroid vimeo 视频下载器
【发布时间】:2013-09-09 06:51:48
【问题描述】:

我想在 VideoView 中播放 vimeo 视频,但这里有问题。

桌面视频下载步骤如下(基于ossguy.com脚本):

我想在 android 中重复相同的步骤,因为从上一步获得的 URL 可以用 VideoView 播放。但问题是当从第 3 步发送相同的请求时,响应不包含“Location”标头。有什么想法吗?

【问题讨论】:

    标签: android video android-videoview vimeo


    【解决方案1】:

    如果有人需要回答,我发布了我的解决方案。 下面是我的函数 httpRequest(),我在每个步骤中都使用它来获取页面和响应标头。我假设我在使用 DefaultHTTPClient 时遇到了重定向问题,因为“位置”标头将在第 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;
    }
    

    【讨论】:

      【解决方案2】:

      在安卓中

      首先在你的项目中添加io.vov.vitamio.widget包。

      1. 然后在你的xml布局文件中定义一个videoview ...

      2. 然后在您的 java 文件中使用此代码。确保您正在导入 vimeo 包中可用的包

        videoView.setVideoURI(Uri.parse(path));

        videoView.setMediaController(new MediaController(this));

        videoView.requestFocus();

        videoView.start();

      【讨论】:

      • 我需要将“路径”变量设置为类似于步骤 4 的链接,问题是获取该 url 以便通过流媒体播放,我正在使用 vitamio,但如果我设置类似于步骤 1 中的链接3、不能播放视频。