0

私は自分のプロジェクトで mediaplayer から exoplayer に切り替えていますが、ドキュメントがほとんどないため、ここでいくつか質問したいと思います。

プレーヤーの作成に成功しました:

   exoPlayer = ExoPlayer.Factory.newInstance(1);
   playerControl = new PlayerControl(exoPlayer);

音楽リストをクリックすると、音楽の再生が始まります。

    musicList.addOnItemTouchListener(
            new RecyclerItemClickListener(getApplicationContext(), new RecyclerItemClickListener.OnItemClickListener() {
                @Override
                public void onItemClick(View view, final int position) {

                    mediaController.show(0);

                    currentPosition = position;
                    URL = musicUrl.get(position);

                    Uri uri = Uri.parse(URL);

                    sampleSource = new DefaultSampleSource(new FrameworkSampleExtractor(getApplicationContext(), uri, null), 2);
                    audioRenderer = new MediaCodecAudioTrackRenderer(sampleSource, null, true);

                    exoPlayer.prepare(audioRenderer);
                    exoPlayer.setPlayWhenReady(true);

                }
            })
    );

問題は、リストの別のトラックをクリックした場合に音楽を変更する方法がわからないことです.トラック番号6をクリックして変更するとトラック番号2が再生されている場合.それは完璧になります。

私は本当にスタックオーバーフローからすべてのトピックを読みましたが、デモアプリで解決策を見つけることができません.1つのトラックしか再生されず、変更されません.

4

4 に答える 4

0
于 2016-08-19T09:41:18.580 に答える
0

多分私の答えはあなたを助けます。アプリで exoplayer を使用して、このようなことをしています。私は ExoPlayer を初期化しませんが、これは構成が難しいです。ビューを作成するだけです

 <com.devbrackets.android.exomedia.ui.widget.EMVideoView
    android:id="@+id/video_player"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

そしてフラグメントで私はそれを初期化します

@Bind(R.id.video_player)
EMVideoView emVideoView;

バターナイフ付き

音楽やビデオを開くために、recyclerView を使用して CustomAdapter を作成し、コンテンツを再生するためのすべてを構成します。

私のアプリケーションは次のようになります

PlayerActivity>
CustomPlayerFragment>
VideoGridAdapter>
于 2016-08-19T09:51:06.340 に答える