播放器集成 - mengzhuSDK/MengzhuSDK_Android GitHub Wiki

1 播放器集成

  • 播放器初始化
private PlayerEventListener mPlayerEventListener = new PlayerEventListener() {
        @Override
        public void hideAllEvent() {}//隐藏上下栏

        @Override
        public void showAllEvent() {}//显示上下栏

        @Override
        public void onBackClick(boolean isBack) {}//返回按钮监听

        @Override
        public void onPausePlayer() {} //暂停按钮监听

        @Override
        public void onStartPlayer() {} //开始按钮监听

        @Override
        public void onForbid(boolean isForbid) {} //屏幕锁回调

        @Override
        public void onSwitchFullBtnClick(int orientation) {} // 屏幕切换按钮点击回调

        @Override
        public void onTvClick() {} // 投屏按钮点击回调

        @Override
        public void onSpeedClick() {} // 倍速切换按钮点击回调
    };
MZPlayerManager mManager=new MZPlayerManager(); mManager.init(mzPlayerView).setBroadcastType(IMZPlayerManager.TYPE_VIDEO,false).setMediaQuality(IMZPlayerManager.MZ_MEDIA_QUALITY_HIGH);
 mManager.setEventListener(mPlayerEventListener);
mManager.setVideoPath(url);
mManager.start();
  • 基础API控制
mManager.setVideoPath(url);//设置播放地址
mManager.start();//开始播放
mManager.onResume();//恢复播放
mManager.onPause();//暂停播放
mManager.onDestroy();//销毁播放器
mManager.seekTo(long var1)//快进
  • 布局文件
<tv.mengzhu.sdk.module.MZPlayerView
        android:id="@+id/video_playerfragment_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

播放器自定义集成

  • 播放器自定义集成提供基础控件及所有控制API。
  • 自定义目的是为了方便开发者进行自定义UI开发。
  • 自定义方式除了基础控件以外其他所有界面布局都需要开发者自行开发。
  • 布局文件
<com.mengzhu.live.sdk.business.view.widgets.MZVideoView
        android:id="@+id/video_view"
        android:layout_width="match_parent"
        android:layout_height="230dp"></com.mengzhu.live.sdk.business.view.widgets.MZVideoView>
  • 初始化
video_view=findViewById(R.id.video_view);
        video_view.setVideoPath("https://vod.t.zmengzhu.com/record/base/hls-sd/3b99d7478912cab200008226.m3u8");

业务功能集成

  • 获取主播信息
 MZApiRequest mzApiRequest1 = new MZApiRequest();
                mzApiRequest1.createRequest(TestActivity.this,MZApiRequest.API_TYPE_ANCHOR_INFO);
                mzApiRequest1.setResultListener(new MZApiDataListener() {
                    @Override
                    public void dataResult(String apiType, Object dto) {

                    }

                    @Override
                    public void errorResult(String apiType, int code, String msg) {

                    }
                });
                mzApiRequest1.startData(MZApiRequest.API_TYPE_ANCHOR_INFO,"ticketid");
  • 获取播放详情
MZApiRequest mzApiRequest=new MZApiRequest();
        mzApiRequest.createRequest(this,MZApiRequest.API_TYPE_PLAY_INFO);
        mzApiRequest.setResultListener(new MZApiDataListener() {
                    @Override
                    public void dataResult(String apiType, Object dto) {

                    }

                    @Override
                    public void errorResult(String apiType, int code, String msg) {

                    }
                });
        mzApiRequest.startData(MZApiRequest.API_TYPE_PLAY_INFO,"ticketid");
  • 获取商品列表
MZApiRequest apiRequest = new MZApiRequest();
        apiRequest.createRequest(mContext, MZApiRequest.API_TYPE_GOODS_LIST);
        apiRequest.setResultListener(new MZApiDataListener() {
            @Override
            public void dataResult(String apiType, Object dto) {
               
            }

            @Override
            public void errorResult(String apiType, int code, String msg) {
            }
        });
        apiRequest.startData(MZApiRequest.API_TYPE_GOODS_LIST, true, ticketId);
  • 获取在线观众列表
MZApiRequest apiRequest=new MZApiRequest();
                apiRequest.createRequest(TestActivity.this,MZApiRequest.API_TYPE_ONLINE_USER_LIST);
                apiRequest.setResultListener(new MZApiDataListener() {
                @Override
                public void dataResult(String apiType, Object dto) {
                
                }

                @Override
                public void errorResult(String apiType, int code, String msg) {
                
                }
            });
        apiRequest.startData(MZApiRequest.API_TYPE_ONLINE_USER_LIST,true,"10001864");

更多播放器自定义,其他业务接口参考demo以及api文档