Android-Exoplayer显示空白屏幕,而不是播放视频

时间:2019-10-08 04:12:41

标签: android exoplayer exoplayer2.x

我正在尝试将Exoplayer库集成到我的android应用中。

以下是我在android应用中实现的以下代码。

Layout.xml

put your form in a container and override the css of the select component :
css----------------
    .yourClassName{
        width: 100%!important;
    }
html-----------------------
    <Container>
      <Col md={{ span: 6, offset: 3 }}>
      <Form onSubmit={this.onSubmitForm}>
                  <Form.Row>
                    <Col md={{ span: 3 }}>
                      <Form.Group as={Row} controlId="Email">
                        <Form.Label>Email Address</Form.Label>
                        <Form.Control type="email" placeholder="Enter Email" name="Email" 
                           value={this.state.Email} onChange={this.handleChange} />
                      </Form.Group>
                    </Col>
                    <Col md={{ span: 3}}>
                      <Form.Group as={Row} controlId="Name">
                        <Form.Label>Name</Form.Label>
                        <Form.Control type="text" placeholder="Enter Name" name="Name" 
                          value={this.state.Name} onChange={this.handleChange} />
                      </Form.Group>
                    </Col>
         </Form.Row>
         <Form>
      </Col>
    </Container>

MainActivity.java

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.ayalus.exoplayer2example.MainActivity">
    <com.google.android.exoplayer2.ui.SimpleExoPlayerView
        android:id="@+id/player_view"
        android:focusable="true"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_below="@+id/resolution_textView"
        android:layout_marginTop="10dp" />    
</RelativeLayout>

我在AndroidManifest.xml中提供了互联网渗透。

问题是当我运行android应用时,它没有播放视频,而是给了我黑屏。

enter image description here

请帮助

3 个答案:

答案 0 :(得分:0)

我认为您的videoSource错误,您应该使用videoSource = new HlsMediaSource.Factory而不只是new HlsMediaSource

您是否也可以向我们展示您的dataSourceFactory,以防万一不是videoSource的问题

答案 1 :(得分:0)

您需要更改下面的代码行:

MediaSource videoSource = new HlsMediaSource(mp4VideoUri, dataSourceFactory, 1, null, null);

收件人,(更新以下行):

DataSource.Factory dataSourceFactory = new DefaultHttpDataSourceFactory(
                Util.getUserAgent(context, "YOUR_APPLICATION_NAME"), null,
                DefaultHttpDataSource.DEFAULT_CONNECT_TIMEOUT_MILLIS,
                1800000,
                true);

HlsMediaSource mediaSource = new HlsMediaSource(mp4VideoUri,dataSourceFactory, 1800000,new Handler(), null);

答案 2 :(得分:0)

我已经在 oncreateviewholder 中初始化了我的 exoplayer。将初始化转移到 onbindviewholder 修复了我的问题:)