ExoPlayer不播放视频

时间:2019-08-27 21:03:30

标签: android user-interface exoplayer

我已经完成了用于播放HLS的ExoPlayer的下一个实现:

SimpleExoPlayer player;

player = ExoPlayerFactory.newSimpleInstance(mContext, trackSelector, loadControl);

                    Handler mHandler = new Handler();
                    String userAgent = Util.getUserAgent(mContext, "appName");
                    DataSource.Factory dataSourceFactory = new DefaultHttpDataSourceFactory(
                            userAgent, null,
                            DefaultHttpDataSource.DEFAULT_CONNECT_TIMEOUT_MILLIS,
                            1800000,
                            true);
                    HlsMediaSource mediaSource = new HlsMediaSource(Uri.parse(URL), dataSourceFactory, 1800000,
                            mHandler, null);
                    player.setPlayWhenReady(true);
                    player.prepare(mediaSource);

然后我发现我的代码仅播放音频,并且一直在搜索直到找到:

PlayerView playerView;
playerView = view.findViewById(R.id.pView);
playerView.setPlayer(player);

使用playerView布局:

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/RLteleNew"
    android:keepScreenOn="true"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/gray21"
    >

...

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_below="@+id/LLtopnew2"
        >

        <com.google.android.exoplayer2.ui.PlayerView
        android:id="@+id/pView"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_gravity="center"
        android:layout_centerVertical="true"
        android:visibility="visible">
    </com.google.android.exoplayer2.ui.PlayerView>
</RelativeLayout>
</RelativeLayout>

在所有示例中,这都是播放视频的解决方案,但是当我将其添加到我的代码中时-Exoplayer不播放任何内容。

我应该在代码中编辑什么?

找到了另一个有关ExoPlayer实施的好指南: https://exoplayer.dev/hello-world.html

似乎我做对了所有事情。

有人知道为什么它不起作用吗?

1 个答案:

答案 0 :(得分:0)

在Activity中而不是在适配器类中实现。