gsyvideoplayer 视频播放 11.5k

本文详细介绍了如何在Android项目中集成并使用GSYVideoPlayer播放器,包括布局配置、代码实现及自定义选项设置,如封面加载、全屏裁剪显示等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

//完整版引入 star 11.5k      implementation 'com.shuyu:GSYVideoPlayer:7.0.2'   //2.0.8

1 布局

<?xml version="1.0" encoding="utf-8"?>
<com.shuyu.gsyvideoplayer.video.StandardGSYVideoPlayer
    android:id="@+id/detail_player"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    xmlns:android="http://schemas.android.com/apk/res/android" />

2 代码

public class GSYVideoPlayerActivity extends GSYBaseActivityDetail {
    private StandardGSYVideoPlayer detailPlayer;
    private String mUrl;
    private String imagePath;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_gsy_videoplayer);

        detailPlayer = (StandardGSYVideoPlayer) findViewById(R.id.detail_player);
        //增加title
        detailPlayer.getTitleTextView().setVisibility(View.GONE);
        detailPlayer.getBackButton().setVisibility(View.GONE);

        //全屏裁减显示,为了显示正常 CoverImageView 建议使用FrameLayout作为父布局
        GSYVideoType.setShowType(GSYVideoType.SCREEN_TYPE_FULL);

        mUrl = getIntent().getStringExtra("videoPath");
        imagePath = getIntent().getStringExtra("imagePath");

        initVideoBuilderMode();
        detailPlayer.startPlayLogic();

    }

    @Override
    public StandardGSYVideoPlayer getGSYVideoPlayer() {
        return detailPlayer;
    }

    @Override
    public GSYVideoOptionBuilder getGSYVideoOptionBuilder() {
        //内置封面可参考SampleCoverVideo
        ImageView imageView = new ImageView(this);
        loadCover(imageView, imagePath);

        return new GSYVideoOptionBuilder()
                .setThumbImageView(imageView)
                .setUrl(mUrl)
                .setCacheWithPlay(true)
                .setVideoTitle(" ")
                .setIsTouchWiget(true)
                .setRotateViewAuto(false)
                .setLockLand(false)
                .setShowFullAnimation(false)
                .setNeedLockFull(true)
                .setSeekRatio(1);
    }

    private void loadCover(ImageView imageView, String url) {

        imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
        imageView.setImageResource(R.mipmap.ic_launcher);
        Glide.with(this.getApplicationContext())
                .setDefaultRequestOptions(
                        new RequestOptions()
                                .frame(3000000)
                                .centerCrop()
                                .placeholder(R.mipmap.ic_wait))
                .load(url)
                .into(imageView);
    }

    @Override
    public void clickForFullScreen() {

    }

}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值