打赏

android 视频播放器 饺子播放器

1.饺子播放器集成

implementation 'cn.jzvd:jiaozivideoplayer:6.2.12'

2.添加xml控件

        <cn.jzvd.JZVideoPlayerStandard
            android:id="@+id/videoPlayer"
            android:scaleType="fitXY"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            >
        </cn.jzvd.JZVideoPlayerStandard>

3.设置全屏 拉伸铺满屏幕 去掉头部阴影 去掉屏幕俩边黑边 监听完成进度 设置默认图 暂停 继续 不要返回键

复制代码
 jiecao_video = (JZVideoPlayerStandard) findViewById(R.id.videoPlayer);

        jiecao_video.SAVE_PROGRESS = false;
        jiecao_video.TOOL_BAR_EXIST = false;
        jiecao_video.hideSupportActionBar(MainActivity_Video.this);
        jiecao_video.thumbImageView.setScaleType(ImageView.ScaleType.FIT_XY);
        jiecao_video.thumbImageView.setImageResource(R.mipmap.video_thume);
        jiecao_video.setUp(json, JCVideoPlayerStandard.SCREEN_LAYOUT_NORMAL, "");
        JZVideoPlayer.setVideoImageDisplayType(JZVideoPlayer.VIDEO_IMAGE_DISPLAY_TYPE_FILL_PARENT);//
        JZUtils.getAppCompActivity(this).getSupportActionBar();
        jiecao_video.hideSupportActionBar(this);
        jiecao_video.startVideo();
复制代码
 @Override
    protected void onDestroy() {
        super.onDestroy();
        if (jiecao_video != null) {
            jiecao_video.release();
        }
        JZVideoPlayerStandard.releaseAllVideos();
    }
    private boolean isPlayResume=false;
    @Override
    protected void onPause() {
        super.onPause();
        JZVideoPlayerStandard.goOnPlayOnPause();
        isPlayResume = true;
    }
    @Override
    protected void onResume() {
        super.onResume();
        if (isPlayResume) {
            JZVideoPlayerStandard.goOnPlayOnResume();
            isPlayResume = false;
        }
    }
复制代码
Handler myHandler = new Handler();
    private Runnable runnableStar = new Runnable() {
        @Override
        public void run() {
            try {
                if (!StringUtils.isEmpty(json) && null != jiecao_video) {
                    LogUtils.e("当前播放状态" + jiecao_video.getCurrentPositionWhenPlaying());
                    if (jiecao_video.currentState == CURRENT_STATE_AUTO_COMPLETE) {
                        test.setVisibility(View.VISIBLE);
                        return;
                    }
                }
            } catch (Exception e) {
            }
            myHandler.postDelayed(this, 1000);
        }
    };
复制代码

 

posted @   YY2000  阅读(1678)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示