JWPlayer geting在播放器的url更改时崩溃

时间:2018-06-03 18:34:34

标签: android jwplayer exoplayer

更改频道网址时遇到问题。

        MainActivity.java
    -----------------------------
    rvChannelList.post(new Runnable() {
        @Override
        public void run() {
            mPlayerView.load(((ChannelListAdapter) rvChannelList.getAdapter()).getPlaylistItems());
        }
    });



     rvChannelList.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
            mPlayerView.playlistItem(position);
        }

        @Override
        public void onNothingSelected(AdapterView<?> arg0) {

        }
    });


    ChannelListAdapter.java
    -----------------------------
    public ChannelListAdapter(Context context) {
    this.context = context;
    channels = Realm.getDefaultInstance().where(Channel.class).findAll();
    channels.addChangeListener(new RealmChangeListener<RealmResults<Channel>>() {
        @Override
        public void onChange(RealmResults<Channel> channels) {
            notifyDataSetChanged();
        }
    });
    for (Channel channel : channels) {
        playlistItems.add(
                new PlaylistItem.Builder()
                        .file(channel.getStreaming_url())
                        .mediaDrmCallback(new HomeActivity.WidevineMediaDrmCallback())
                        .description("")
                        .build());
    }

    }

    public List<PlaylistItem> getPlaylistItems(){
    return playlistItems;
    }

    main_activity.xml
    ----------------------------
    <com.longtailvideo.jwplayer.JWPlayerView
            xmlns:jwp="http://schemas.android.com/apk/lib/com.longtailvideo.jwplayer"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="0.6"
            android:id="@+id/mPlayerView"
            android:layout_margin="20dp"
            app:jw_stretching="fill"
            jwp:jw_autostart="false"/>
  

致命的例外:主要       过程:PID:14627       java.lang.ArrayIndexOutOfBoundsException:length = 12;指数= -1           at java.util.ArrayList.get(ArrayList.java:310)           在com.longtailvideo.jwplayer.c.e $ 1.onRenderedFirstFrame(SourceFile:323)           在com.google.android.exoplayer2.SimpleExoPlayer $ ComponentListener.onRenderedFirstFrame(SourceFile:974)           在com.google.android.exoplayer2.video.VideoRendererEventListener $ EventDispatcher $ 6.run(SourceFile:209)           在android.os.Handler.handleCallback(Handler.java:739)           在android.os.Handler.dispatchMessage(Handler.java:95)           在android.os.Looper.loop(Looper.java:148)           在android.app.ActivityThread.main(ActivityThread.java:5422)           at java.lang.reflect.Method.invoke(Native Method)           在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:726)           在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)

0 个答案:

没有答案