首页 > 解决方案 > ExoPlayer 2.11.1 默认带宽表();已弃用

问题描述

我正在使用 ExoPlayer 在 Android 上播放视频。但是“ DefaultBandwidthMeter();” 已弃用。

    DefaultBandwidthMeter bandwidthMeter = new DefaultBandwidthMeter();

        //DefaultTrackSelector chooses tracks in the media item
        DefaultTrackSelector trackSelector = new DefaultTrackSelector(this);
        trackSelector.setParameters(trackSelector.buildUponParameters().setMaxVideoSizeSd());
        mPlayer = new SimpleExoPlayer.Builder(this).setTrackSelector(trackSelector).build();

        DataSource.Factory dataSourceFactory = new DefaultDataSourceFactory(this, Util.getUserAgent(this, "exoplayerapp"), bandwidthMeter);
        MediaSource mediaSource = new ProgressiveMediaSource.Factory(dataSourceFactory).createMediaSource(Uri.parse(url));

        mPlayer.prepare(mediaSource);

        playerView.setKeepScreenOn(true);
        playerView.requestFocus();
        playerView.setPlayer(mPlayer);
        mPlayer.setPlayWhenReady(true);
        playBackStateListener = new PlayBackStateListener();
        mPlayer.addListener(playBackStateListener);

我应该在其中使用什么,并根据我应该用什么替换正在使用带宽计的以下行?

  DataSource.Factory dataSourceFactory = new DefaultDataSourceFactory(this, Util.getUserAgent(this, "exoplayerapp"), bandwidthMeter);

标签: androidexoplayerexoplayer2.xvideo-player

解决方案


您应该使用DefaultBandwidthMeter.Builder。来自 ExoPlayer文档的来源。


推荐阅读