【问题标题】:How to play vimeo Video by using official library Vimeo Networking Library?如何使用官方库 Vimeo Networking Library 播放 vimeo Video?
【发布时间】:2021-03-05 21:51:44
【问题描述】:

我想在 VideoView 或 ExoPlayer

的帮助下,使用 Vimeo 官方库:Vimeo networking library 在我的 Android 应用中播放 Vimeo 视频

原生播放的基本要求是:

用户必须登录。 用户必须是视频的所有者。 用户必须是 PRO 或更高版本(或应用程序必须具有“可以访问所有者的视频文件”功能)。 令牌必须具有 video_files 范围。 用户必须是发出请求的 API 应用的所有者。

【问题讨论】:

    标签: android-studio vimeo vimeo-api vimeo-player vimeo-android


    【解决方案1】:

    这是我的完整代码,可帮助我使用 Vimeo 网络库在 Android 应用中播放视频

    呈现最终代码

    public class PlayActivity extends AppCompatActivity {
    
    VideoView videoView;
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_play);
    
        videoView = findViewById(R.id.player);
        // Getting access Token
    
        String accessToken = getString(R.string.access_token);
        Configuration.Builder configBuilder = new Configuration.Builder(accessToken)
                .enableCertPinning(false);
        //Vimeo Client autenticated
    
        VimeoClient.initialize(configBuilder.build());
        // the video uri; if you have a video, this is video.uri
    

    你应该使用这种格式的 URI 例如。我使用第二种格式的 URI https://api.vimeo.com/me/videos/123456789

        final String uri = "https://api.vimeo.com/me/videos/123456789"; 
    
        VimeoClient.getInstance().fetchNetworkContent(uri, new ModelCallback<Video>(Video.class) {
        
        @Override
        public void success(Video video) {
            Toast.makeText(PlayActivity.this, "Sucessful" + video, Toast.LENGTH_SHORT).show();
           
            ArrayList<VideoFile> videoFiles = video.files;
            Log.i("TAG1", "videoFiles " + videoFiles);
            if (videoFiles != null && !videoFiles.isEmpty()) {
                VideoFile videoFile = videoFiles.get(0); // you could sort these files by size, fps, width/height
                
                String link = videoFile.getLink();
                Log.i("TAG2", "link " + link);
                // load link
                // use the link to play the video by **EXO Player** or **Video View**
               // Start your video player here
               }
             }
    
        @Override
        public void failure(VimeoError error) {
    
            Log.i("TAG3", "vimeo error  : " + error.getErrorMessage());
            Toast.makeText(PlayActivity.this, "failure due to " + error.getErrorMessage(), Toast.LENGTH_SHORT).show();
    
                }
             });
           }
        }
    

    【讨论】:

      猜你喜欢
      • 2017-01-09
      • 2016-07-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-05
      • 2021-08-09
      • 2016-12-28
      相关资源
      最近更新 更多