AudioAndVideoPlayActivity2.java
4.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
package com.yinhebairong.clasmanage.ui;
import android.content.res.Configuration;
import android.graphics.Color;
import android.media.MediaPlayer;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.SeekBar;
import com.shuyu.gsyvideoplayer.builder.GSYVideoOptionBuilder;
import com.shuyu.gsyvideoplayer.listener.GSYSampleCallBack;
import com.shuyu.gsyvideoplayer.listener.LockClickListener;
import com.shuyu.gsyvideoplayer.utils.OrientationUtils;
import com.shuyu.gsyvideoplayer.video.StandardGSYVideoPlayer;
import com.yinhebairong.clasmanage.R;
import com.yinhebairong.clasmanage.base.BaseActivity;
import com.yinhebairong.clasmanage.base.instant.Layout;
import com.yinhebairong.clasmanage.base.instant.TopNavigationBar;
import com.yinhebairong.clasmanage.base.instant.slideslip.SlideLip;
import com.yinhebairong.clasmanage.view.DebugLog;
import java.io.IOException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
@SlideLip(slidelip = false) // 侧滑返回上一页 , 默认不开启 \
@TopNavigationBar(color = Color.TRANSPARENT, setBarBiack = 0) // 状态栏颜色 , 状态栏样式
@Layout(R.layout.activity_audio_video)
public class AudioAndVideoPlayActivity2 extends BaseActivity {
@BindView(R.id.include_back)
ImageView includeBack;
@BindView(R.id.videoplay)
StandardGSYVideoPlayer videoplay;
@BindView(R.id.btn_bofang)
Button btn_bofang;
@BindView(R.id.seekBar1)
SeekBar seekBar1;
private boolean isPlay;
private boolean isPause;
GSYVideoOptionBuilder gsyVideoOption;
OrientationUtils orientationUtils;
@Override
protected void initData() {
ButterKnife.bind(this);
initVideo();
}
private void initVideo() {
gsyVideoOption = new GSYVideoOptionBuilder();
videoplay.getBackButton().setVisibility(View.GONE);
//外部辅助的旋转,帮助全屏
orientationUtils = new OrientationUtils(this, videoplay);
//初始化不打开外部的旋转
orientationUtils.setEnable(false);
// setplay(gsyVideoOption,"http://class.ynsdfx.com/uploads/20200410/06633beeb1125bea23d851bdd787bf49.mp4");
setplay(gsyVideoOption, "http://class.ynsdfx.com/uploads/20200410/e0ed7cb8334da63c1a532bae110bf3eb.mp4");
}
@Override
protected void setEvent() {
includeBack.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
}
@OnClick({})
public void onViewClicked(View view) {
switch (view.getId()) {
}
}
private void setplay(GSYVideoOptionBuilder gsyVideoOption, String url) {
gsyVideoOption
.setIsTouchWiget(true)
.setRotateViewAuto(false)
.setLockLand(false)
.setAutoFullWithSize(true)
.setShowFullAnimation(false)
.setNeedLockFull(true)
.setUrl(url)
.setCacheWithPlay(false) // .setVideoTitle("测试视频")
.setVideoAllCallBack(new GSYSampleCallBack() {
@Override
public void onPrepared(String url, Object... objects) {
super.onPrepared(url, objects);
//开始播放了才能旋转和全屏
orientationUtils.setEnable(true);
isPlay = true;
}
@Override
public void onQuitFullscreen(String url, Object... objects) {
super.onQuitFullscreen(url, objects);
}
}).setLockClickListener(new LockClickListener() {
@Override
public void onClick(View view, boolean lock) {
}
}).build(videoplay);
videoplay.startPlayLogic();
}
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
//如果旋转了就全屏
if (isPlay && !isPause) {
videoplay.onConfigurationChanged(this, newConfig, orientationUtils, true, true);
}
}
@Override
protected void onPause() {
videoplay.getCurrentPlayer().onVideoPause();
super.onPause();
isPause = true;
}
@Override
protected void onResume() {
videoplay.getCurrentPlayer().onVideoResume(false);
super.onResume();
isPause = false;
}
@Override
protected void onDestroy() {
super.onDestroy();
if (isPlay&&videoplay!=null) {
videoplay.getCurrentPlayer().release();
}
if (orientationUtils != null) {
orientationUtils.releaseListener();
}
}
}