Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
qq_26386469
GSYVideoPlayer
提交
106df810
G
GSYVideoPlayer
项目概览
qq_26386469
/
GSYVideoPlayer
与 Fork 源项目一致
从无法访问的项目Fork
通知
5
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
GSYVideoPlayer
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
106df810
编写于
10月 12, 2019
作者:
G
guoshuyu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix #2306 remove TimerTask
上级
221e758d
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
40 addition
and
114 deletion
+40
-114
app/src/main/java/com/example/gsyvideoplayer/video/FloatingVideo.java
.../java/com/example/gsyvideoplayer/video/FloatingVideo.java
+1
-44
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/video/base/GSYVideoControlView.java
.../shuyu/gsyvideoplayer/video/base/GSYVideoControlView.java
+39
-70
未找到文件。
app/src/main/java/com/example/gsyvideoplayer/video/FloatingVideo.java
浏览文件 @
106df810
...
...
@@ -28,7 +28,7 @@ import static com.shuyu.gsyvideoplayer.utils.CommonUtil.hideNavKey;
public
class
FloatingVideo
extends
StandardGSYVideoPlayer
{
protected
DismissControlViewTimerTask
mDismissControlViewTimerTask
;
protected
Timer
mDismissControlViewTimer
;
/**
* 1.5.0开始加入,如果需要不同布局区分功能,需要重载
...
...
@@ -147,27 +147,6 @@ public class FloatingVideo extends StandardGSYVideoPlayer {
return
getContext
();
}
@Override
protected
void
startDismissControlViewTimer
()
{
cancelDismissControlViewTimer
();
mDismissControlViewTimer
=
new
Timer
();
mDismissControlViewTimerTask
=
new
DismissControlViewTimerTask
();
mDismissControlViewTimer
.
schedule
(
mDismissControlViewTimerTask
,
mDismissControlTime
);
}
@Override
protected
void
cancelDismissControlViewTimer
()
{
if
(
mDismissControlViewTimer
!=
null
)
{
mDismissControlViewTimer
.
cancel
();
mDismissControlViewTimer
=
null
;
}
if
(
mDismissControlViewTimerTask
!=
null
)
{
mDismissControlViewTimerTask
.
cancel
();
mDismissControlViewTimerTask
=
null
;
}
}
@Override
protected
boolean
isShowNetConfirm
()
{
...
...
@@ -204,26 +183,4 @@ public class FloatingVideo extends StandardGSYVideoPlayer {
}
alertDialog
.
show
();
}
private
class
DismissControlViewTimerTask
extends
TimerTask
{
@Override
public
void
run
()
{
if
(
mCurrentState
!=
CURRENT_STATE_NORMAL
&&
mCurrentState
!=
CURRENT_STATE_ERROR
&&
mCurrentState
!=
CURRENT_STATE_AUTO_COMPLETE
)
{
if
(
getActivityContext
()
!=
null
)
{
FloatingVideo
.
this
.
post
(
new
Runnable
()
{
@Override
public
void
run
()
{
hideAllWidget
();
setViewShowState
(
mLockScreen
,
GONE
);
if
(
mHideKey
&&
mIfCurrentIsFullscreen
&&
mShowVKey
)
{
hideNavKey
(
mContext
);
}
}
});
}
}
}
}
}
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/video/base/GSYVideoControlView.java
浏览文件 @
106df810
...
...
@@ -5,9 +5,11 @@ import android.content.Context;
import
android.media.AudioManager
;
import
android.os.Handler
;
import
android.os.Looper
;
import
androidx.annotation.AttrRes
;
import
androidx.annotation.NonNull
;
import
androidx.annotation.Nullable
;
import
android.text.TextUtils
;
import
android.util.AttributeSet
;
import
android.view.GestureDetector
;
...
...
@@ -21,6 +23,7 @@ import android.widget.ProgressBar;
import
android.widget.RelativeLayout
;
import
android.widget.SeekBar
;
import
android.widget.TextView
;
import
com.shuyu.gsyvideoplayer.R
;
import
com.shuyu.gsyvideoplayer.listener.GSYVideoProgressListener
;
import
com.shuyu.gsyvideoplayer.listener.LockClickListener
;
...
...
@@ -127,6 +130,9 @@ public abstract class GSYVideoControlView extends GSYVideoView implements View.O
//seek touch
protected
boolean
mHadSeekTouch
=
false
;
protected
boolean
mPostProgress
=
false
;
protected
boolean
mPostDismiss
=
false
;
//播放按键
protected
View
mStartButton
;
...
...
@@ -163,21 +169,9 @@ public abstract class GSYVideoControlView extends GSYVideoView implements View.O
//底部进度调
protected
ProgressBar
mBottomProgressBar
;
//进度定时器
protected
Timer
updateProcessTimer
;
//触摸显示消失定时
protected
Timer
mDismissControlViewTimer
;
//定时器任务
protected
ProgressTimerTask
mProgressTimerTask
;
//点击锁屏的回调
protected
LockClickListener
mLockClickListener
;
//触摸显示消失定时任务
protected
DismissControlViewTimerTask
mDismissControlViewTimerTask
;
protected
GSYVideoProgressListener
mGSYVideoProgressListener
;
public
GSYVideoControlView
(
@NonNull
Context
context
)
{
...
...
@@ -273,7 +267,7 @@ public abstract class GSYVideoControlView extends GSYVideoView implements View.O
});
}
if
(
getActivityContext
()
!=
null
)
{
if
(
getActivityContext
()
!=
null
)
{
mSeekEndOffset
=
CommonUtil
.
dip2px
(
getActivityContext
(),
50
);
}
}
...
...
@@ -373,7 +367,7 @@ public abstract class GSYVideoControlView extends GSYVideoView implements View.O
protected
void
setSmallVideoTextureView
(
View
.
OnTouchListener
onTouchListener
)
{
super
.
setSmallVideoTextureView
(
onTouchListener
);
//小窗口播放停止了也可以移动
if
(
mThumbImageViewLayout
!=
null
)
{
if
(
mThumbImageViewLayout
!=
null
)
{
mThumbImageViewLayout
.
setOnTouchListener
(
onTouchListener
);
}
}
...
...
@@ -671,9 +665,9 @@ public abstract class GSYVideoControlView extends GSYVideoView implements View.O
protected
void
touchSurfaceMove
(
float
deltaX
,
float
deltaY
,
float
y
)
{
int
curWidth
=
0
;
int
curHeight
=
0
;
if
(
getActivityContext
()
!=
null
)
{
curWidth
=
CommonUtil
.
getCurrentScreenLand
((
Activity
)
getActivityContext
())
?
mScreenHeight
:
mScreenWidth
;
curHeight
=
CommonUtil
.
getCurrentScreenLand
((
Activity
)
getActivityContext
())
?
mScreenWidth
:
mScreenHeight
;
if
(
getActivityContext
()
!=
null
)
{
curWidth
=
CommonUtil
.
getCurrentScreenLand
((
Activity
)
getActivityContext
())
?
mScreenHeight
:
mScreenWidth
;
curHeight
=
CommonUtil
.
getCurrentScreenLand
((
Activity
)
getActivityContext
())
?
mScreenWidth
:
mScreenHeight
;
}
if
(
mChangePosition
)
{
int
totalTimeDuration
=
getDuration
();
...
...
@@ -691,7 +685,7 @@ public abstract class GSYVideoControlView extends GSYVideoView implements View.O
int
volumePercent
=
(
int
)
(
mGestureDownVolume
*
100
/
max
+
deltaY
*
3
*
100
/
curHeight
);
showVolumeDialog
(-
deltaY
,
volumePercent
);
}
else
if
(
!
mChangePosition
&&
mBrightness
)
{
}
else
if
(
mBrightness
)
{
if
(
Math
.
abs
(
deltaY
)
>
mThreshold
)
{
float
percent
=
(-
deltaY
/
curHeight
);
onBrightnessSlide
(
percent
);
...
...
@@ -702,7 +696,7 @@ public abstract class GSYVideoControlView extends GSYVideoView implements View.O
protected
void
touchSurfaceMoveFullLogic
(
float
absDeltaX
,
float
absDeltaY
)
{
int
curWidth
=
0
;
if
(
getActivityContext
()
!=
null
)
{
if
(
getActivityContext
()
!=
null
)
{
curWidth
=
CommonUtil
.
getCurrentScreenLand
((
Activity
)
getActivityContext
())
?
mScreenHeight
:
mScreenWidth
;
}
if
(
absDeltaX
>
mThreshold
||
absDeltaY
>
mThreshold
)
{
...
...
@@ -894,21 +888,13 @@ public abstract class GSYVideoControlView extends GSYVideoView implements View.O
protected
void
startProgressTimer
()
{
cancelProgressTimer
();
updateProcessTimer
=
new
Timer
();
mProgressTimerTask
=
new
ProgressTimerTask
();
updateProcessTimer
.
schedule
(
mProgressTimerTask
,
0
,
300
);
mPostProgress
=
true
;
postDelayed
(
progressTask
,
300
);
}
protected
void
cancelProgressTimer
()
{
if
(
updateProcessTimer
!=
null
)
{
updateProcessTimer
.
cancel
();
updateProcessTimer
=
null
;
}
if
(
mProgressTimerTask
!=
null
)
{
mProgressTimerTask
.
cancel
();
mProgressTimerTask
=
null
;
}
mPostProgress
=
false
;
removeCallbacks
(
progressTask
);
}
protected
void
setTextAndProgress
(
int
secProgress
)
{
...
...
@@ -928,7 +914,7 @@ public abstract class GSYVideoControlView extends GSYVideoView implements View.O
if
(
mProgressBar
==
null
||
mTotalTimeTextView
==
null
||
mCurrentTimeTextView
==
null
)
{
return
;
}
if
(
mHadSeekTouch
)
{
if
(
mHadSeekTouch
)
{
return
;
}
if
(!
mTouchingProgressBar
)
{
...
...
@@ -950,7 +936,7 @@ public abstract class GSYVideoControlView extends GSYVideoView implements View.O
}
protected
void
setSecondaryProgress
(
int
secProgress
)
{
if
(
mProgressBar
!=
null
)
{
if
(
mProgressBar
!=
null
)
{
if
(
secProgress
!=
0
&&
!
getGSYVideoManager
().
isCacheFile
())
{
mProgressBar
.
setSecondaryProgress
(
secProgress
);
}
...
...
@@ -993,21 +979,13 @@ public abstract class GSYVideoControlView extends GSYVideoView implements View.O
protected
void
startDismissControlViewTimer
()
{
cancelDismissControlViewTimer
();
mDismissControlViewTimer
=
new
Timer
();
mDismissControlViewTimerTask
=
new
DismissControlViewTimerTask
();
mDismissControlViewTimer
.
schedule
(
mDismissControlViewTimerTask
,
mDismissControlTime
);
mPostDismiss
=
true
;
postDelayed
(
dismissControlTask
,
mDismissControlTime
);
}
protected
void
cancelDismissControlViewTimer
()
{
if
(
mDismissControlViewTimer
!=
null
)
{
mDismissControlViewTimer
.
cancel
();
mDismissControlViewTimer
=
null
;
}
if
(
mDismissControlViewTimerTask
!=
null
)
{
mDismissControlViewTimerTask
.
cancel
();
mDismissControlViewTimerTask
=
null
;
}
mPostDismiss
=
false
;
removeCallbacks
(
dismissControlTask
);
}
...
...
@@ -1058,46 +1036,37 @@ public abstract class GSYVideoControlView extends GSYVideoView implements View.O
&&
mNeedShowWifiTip
&&
!
getGSYVideoManager
().
cachePreview
(
mContext
.
getApplicationContext
(),
mCachePath
,
mOriginUrl
);
}
private
class
ProgressTimerTask
extends
TimerTask
{
Runnable
progressTask
=
new
Runnable
()
{
@Override
public
void
run
()
{
if
(
mCurrentState
==
CURRENT_STATE_PLAYING
||
mCurrentState
==
CURRENT_STATE_PAUSE
)
{
new
Handler
(
Looper
.
getMainLooper
()).
post
(
new
Runnable
()
{
@Override
public
void
run
()
{
setTextAndProgress
(
0
);
}
}
);
setTextAndProgress
(
0
);
}
if
(
mPostProgress
)
{
postDelayed
(
this
,
1000
);
}
}
}
private
class
DismissControlViewTimerTask
extends
TimerTask
{
};
Runnable
dismissControlTask
=
new
Runnable
()
{
@Override
public
void
run
()
{
if
(
mCurrentState
!=
CURRENT_STATE_NORMAL
&&
mCurrentState
!=
CURRENT_STATE_ERROR
&&
mCurrentState
!=
CURRENT_STATE_AUTO_COMPLETE
)
{
if
(
getActivityContext
()
!=
null
)
{
new
Handler
(
Looper
.
getMainLooper
()).
post
(
new
Runnable
()
{
@Override
public
void
run
()
{
hideAllWidget
();
setViewShowState
(
mLockScreen
,
GONE
);
if
(
mHideKey
&&
mIfCurrentIsFullscreen
&&
mShowVKey
)
{
hideNavKey
(
mContext
);
}
}
}
);
hideAllWidget
();
setViewShowState
(
mLockScreen
,
GONE
);
if
(
mHideKey
&&
mIfCurrentIsFullscreen
&&
mShowVKey
)
{
hideNavKey
(
mContext
);
}
}
if
(
mPostDismiss
)
{
postDelayed
(
this
,
mDismissControlTime
);
}
}
}
}
}
;
/************************* 继承之后可自定义ui与显示隐藏 *************************/
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录