Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
qq_26386469
GSYVideoPlayer
提交
024dd213
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,体验更适合开发者的 AI 搜索 >>
提交
024dd213
编写于
2月 01, 2018
作者:
G
guoshuyu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix demo ad
上级
41ba66b6
变更
30
显示空白变更内容
内联
并排
Showing
30 changed file
with
159 addition
and
86 deletion
+159
-86
app/src/main/java/com/example/gsyvideoplayer/DanmkuVideoActivity.java
.../java/com/example/gsyvideoplayer/DanmkuVideoActivity.java
+1
-1
app/src/main/java/com/example/gsyvideoplayer/DetailADPlayer.java
.../main/java/com/example/gsyvideoplayer/DetailADPlayer.java
+1
-1
app/src/main/java/com/example/gsyvideoplayer/DetailADPlayer2.java
...main/java/com/example/gsyvideoplayer/DetailADPlayer2.java
+16
-4
app/src/main/java/com/example/gsyvideoplayer/DetailListPlayer.java
...ain/java/com/example/gsyvideoplayer/DetailListPlayer.java
+1
-1
app/src/main/java/com/example/gsyvideoplayer/DetailMoreTypeActivity.java
...va/com/example/gsyvideoplayer/DetailMoreTypeActivity.java
+1
-1
app/src/main/java/com/example/gsyvideoplayer/DetailPlayer.java
...rc/main/java/com/example/gsyvideoplayer/DetailPlayer.java
+1
-1
app/src/main/java/com/example/gsyvideoplayer/InputUrlDetailActivity.java
...va/com/example/gsyvideoplayer/InputUrlDetailActivity.java
+1
-1
app/src/main/java/com/example/gsyvideoplayer/PlayActivity.java
...rc/main/java/com/example/gsyvideoplayer/PlayActivity.java
+1
-1
app/src/main/java/com/example/gsyvideoplayer/PlayEmptyControlActivity.java
.../com/example/gsyvideoplayer/PlayEmptyControlActivity.java
+1
-1
app/src/main/java/com/example/gsyvideoplayer/PlayPickActivity.java
...ain/java/com/example/gsyvideoplayer/PlayPickActivity.java
+1
-1
app/src/main/java/com/example/gsyvideoplayer/ScrollingActivity.java
...in/java/com/example/gsyvideoplayer/ScrollingActivity.java
+1
-1
app/src/main/java/com/example/gsyvideoplayer/adapter/ListMultiNormalAdapter.java
...xample/gsyvideoplayer/adapter/ListMultiNormalAdapter.java
+1
-1
app/src/main/java/com/example/gsyvideoplayer/adapter/ListNormalAdapter.java
...com/example/gsyvideoplayer/adapter/ListNormalAdapter.java
+1
-1
app/src/main/java/com/example/gsyvideoplayer/holder/RecyclerItemNormalHolder.java
...ample/gsyvideoplayer/holder/RecyclerItemNormalHolder.java
+1
-1
app/src/main/java/com/example/gsyvideoplayer/listener/SampleListener.java
...a/com/example/gsyvideoplayer/listener/SampleListener.java
+2
-2
app/src/main/java/com/example/gsyvideoplayer/utils/SmallVideoHelper.java
...va/com/example/gsyvideoplayer/utils/SmallVideoHelper.java
+0
-5
app/src/main/java/com/example/gsyvideoplayer/video/MultiSampleVideo.java
...va/com/example/gsyvideoplayer/video/MultiSampleVideo.java
+12
-0
app/src/main/java/com/example/gsyvideoplayer/video/manager/CustomManager.java
...m/example/gsyvideoplayer/video/manager/CustomManager.java
+4
-1
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/GSYBaseActivityDetail.java
.../java/com/shuyu/gsyvideoplayer/GSYBaseActivityDetail.java
+2
-2
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/GSYVideoADManager.java
...main/java/com/shuyu/gsyvideoplayer/GSYVideoADManager.java
+4
-1
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/GSYVideoManager.java
...c/main/java/com/shuyu/gsyvideoplayer/GSYVideoManager.java
+4
-1
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/builder/GSYVideoOptionBuilder.java
...m/shuyu/gsyvideoplayer/builder/GSYVideoOptionBuilder.java
+19
-14
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/listener/GSYSampleCallBack.java
.../com/shuyu/gsyvideoplayer/listener/GSYSampleCallBack.java
+1
-1
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/listener/StandardVideoAllCallBack.java
...uyu/gsyvideoplayer/listener/StandardVideoAllCallBack.java
+0
-5
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/utils/GSYVideoHelper.java
...n/java/com/shuyu/gsyvideoplayer/utils/GSYVideoHelper.java
+0
-5
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/utils/ListVideoUtil.java
...in/java/com/shuyu/gsyvideoplayer/utils/ListVideoUtil.java
+4
-4
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/video/GSYADVideoPlayer.java
...java/com/shuyu/gsyvideoplayer/video/GSYADVideoPlayer.java
+26
-0
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/video/StandardGSYVideoPlayer.java
...om/shuyu/gsyvideoplayer/video/StandardGSYVideoPlayer.java
+2
-11
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/video/base/GSYBaseVideoPlayer.java
...m/shuyu/gsyvideoplayer/video/base/GSYBaseVideoPlayer.java
+39
-17
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/video/base/GSYVideoPlayer.java
...a/com/shuyu/gsyvideoplayer/video/base/GSYVideoPlayer.java
+11
-0
未找到文件。
app/src/main/java/com/example/gsyvideoplayer/DanmkuVideoActivity.java
浏览文件 @
024dd213
...
...
@@ -90,7 +90,7 @@ public class DanmkuVideoActivity extends AppCompatActivity {
}
});
danmakuVideoPlayer
.
set
Standard
VideoAllCallBack
(
new
GSYSampleCallBack
()
{
danmakuVideoPlayer
.
setVideoAllCallBack
(
new
GSYSampleCallBack
()
{
@Override
public
void
onPrepared
(
String
url
,
Object
...
objects
)
{
super
.
onPrepared
(
url
,
objects
);
...
...
app/src/main/java/com/example/gsyvideoplayer/DetailADPlayer.java
浏览文件 @
024dd213
...
...
@@ -70,7 +70,7 @@ public class DetailADPlayer extends GSYBaseActivityDetail<ListGSYVideoPlayer> {
detailPlayer
.
setShowFullAnimation
(
false
);
detailPlayer
.
setNeedLockFull
(
true
);
detailPlayer
.
set
Standard
VideoAllCallBack
(
this
);
detailPlayer
.
setVideoAllCallBack
(
this
);
detailPlayer
.
setLockClickListener
(
new
LockClickListener
()
{
@Override
...
...
app/src/main/java/com/example/gsyvideoplayer/DetailADPlayer2.java
浏览文件 @
024dd213
...
...
@@ -57,7 +57,7 @@ public class DetailADPlayer2 extends GSYBaseActivityDetail<NormalGSYVideoPlayer>
detailPlayer
.
setStartAfterPrepared
(
false
);
detailPlayer
.
setReleaseWhenLossAudio
(
false
);
GSYVideoOptionBuilder
adBuilder
=
getGSYVideoOptionBuilder
();
final
GSYVideoOptionBuilder
adBuilder
=
getGSYVideoOptionBuilder
();
adBuilder
.
setUrl
(
urlAd
)
.
setVideoAllCallBack
(
new
GSYSampleCallBack
()
{
@Override
...
...
@@ -71,11 +71,13 @@ public class DetailADPlayer2 extends GSYBaseActivityDetail<NormalGSYVideoPlayer>
@Override
public
void
onAutoComplete
(
String
url
,
Object
...
objects
)
{
adPlayer
.
release
();
adPlayer
.
onVideoReset
();
adPlayer
.
setVisibility
(
View
.
GONE
);
//todo 如果在全屏下的处理
//todo 中间弹出逻辑处理
getGSYVideoPlayer
().
getCurrentPlayer
().
startAfterPrepared
();
if
(
adPlayer
.
getCurrentPlayer
().
isIfCurrentIsFullscreen
())
{
adPlayer
.
removeFullWindowViewOnly
();
if
(!
getGSYVideoPlayer
().
getCurrentPlayer
().
isIfCurrentIsFullscreen
())
{
showFull
();
}
...
...
@@ -108,14 +110,22 @@ public class DetailADPlayer2 extends GSYBaseActivityDetail<NormalGSYVideoPlayer>
//直接横屏
adOrientationUtils
.
resolveByClick
();
//第一个true是否需要隐藏actionbar,第二个true是否需要隐藏statusbar
adPlayer
.
startWindowFullscreen
(
DetailADPlayer2
.
this
,
true
,
true
);
adPlayer
.
startWindowFullscreen
(
DetailADPlayer2
.
this
,
hideActionBarWhenFull
(),
hideStatusBarWhenFull
());
}
});
}
}
@Override
public
void
showFull
()
{
if
(
orientationUtils
.
getIsLand
()
!=
1
)
{
//直接横屏
orientationUtils
.
resolveByClick
();
}
getGSYVideoPlayer
().
startWindowFullscreen
(
DetailADPlayer2
.
this
);
}
@Override
public
void
onBackPressed
()
{
if
(
adOrientationUtils
!=
null
)
{
...
...
@@ -177,6 +187,8 @@ public class DetailADPlayer2 extends GSYBaseActivityDetail<NormalGSYVideoPlayer>
.
setUrl
(
url
)
.
setCacheWithPlay
(
true
)
.
setVideoTitle
(
" "
)
.
setFullHideActionBar
(
true
)
.
setFullHideStatusBar
(
true
)
.
setIsTouchWiget
(
true
)
.
setRotateViewAuto
(
false
)
.
setLockLand
(
false
)
...
...
app/src/main/java/com/example/gsyvideoplayer/DetailListPlayer.java
浏览文件 @
024dd213
...
...
@@ -71,7 +71,7 @@ public class DetailListPlayer extends GSYBaseActivityDetail<ListGSYVideoPlayer>
detailPlayer
.
setShowFullAnimation
(
false
);
detailPlayer
.
setNeedLockFull
(
true
);
detailPlayer
.
set
Standard
VideoAllCallBack
(
this
);
detailPlayer
.
setVideoAllCallBack
(
this
);
detailPlayer
.
setLockClickListener
(
new
LockClickListener
()
{
@Override
...
...
app/src/main/java/com/example/gsyvideoplayer/DetailMoreTypeActivity.java
浏览文件 @
024dd213
...
...
@@ -112,7 +112,7 @@ public class DetailMoreTypeActivity extends AppCompatActivity {
}
});
detailPlayer
.
set
Standard
VideoAllCallBack
(
new
GSYSampleCallBack
()
{
detailPlayer
.
setVideoAllCallBack
(
new
GSYSampleCallBack
()
{
@Override
public
void
onPrepared
(
String
url
,
Object
...
objects
)
{
super
.
onPrepared
(
url
,
objects
);
...
...
app/src/main/java/com/example/gsyvideoplayer/DetailPlayer.java
浏览文件 @
024dd213
...
...
@@ -112,7 +112,7 @@ public class DetailPlayer extends AppCompatActivity {
.
setUrl
(
url
)
.
setCacheWithPlay
(
false
)
.
setVideoTitle
(
"测试视频"
)
.
set
Standard
VideoAllCallBack
(
new
GSYSampleCallBack
()
{
.
setVideoAllCallBack
(
new
GSYSampleCallBack
()
{
@Override
public
void
onPrepared
(
String
url
,
Object
...
objects
)
{
Debuger
.
printfError
(
"***** onPrepared **** "
+
objects
[
0
]);
...
...
app/src/main/java/com/example/gsyvideoplayer/InputUrlDetailActivity.java
浏览文件 @
024dd213
...
...
@@ -80,7 +80,7 @@ public class InputUrlDetailActivity extends AppCompatActivity {
.
setUrl
(
url
)
.
setCacheWithPlay
(
cache
)
.
setVideoTitle
(
"测试视频"
)
.
set
Standard
VideoAllCallBack
(
new
GSYSampleCallBack
()
{
.
setVideoAllCallBack
(
new
GSYSampleCallBack
()
{
@Override
public
void
onPrepared
(
String
url
,
Object
...
objects
)
{
super
.
onPrepared
(
url
,
objects
);
...
...
app/src/main/java/com/example/gsyvideoplayer/PlayActivity.java
浏览文件 @
024dd213
...
...
@@ -150,7 +150,7 @@ public class PlayActivity extends AppCompatActivity {
return
;
}
//释放所有
videoPlayer
.
set
Standard
VideoAllCallBack
(
null
);
videoPlayer
.
setVideoAllCallBack
(
null
);
GSYVideoManager
.
releaseAllVideos
();
if
(
isTransition
&&
Build
.
VERSION
.
SDK_INT
>=
Build
.
VERSION_CODES
.
LOLLIPOP
)
{
super
.
onBackPressed
();
...
...
app/src/main/java/com/example/gsyvideoplayer/PlayEmptyControlActivity.java
浏览文件 @
024dd213
...
...
@@ -75,7 +75,7 @@ public class PlayEmptyControlActivity extends AppCompatActivity {
@Override
public
void
onBackPressed
()
{
//释放所有
videoPlayer
.
set
Standard
VideoAllCallBack
(
null
);
videoPlayer
.
setVideoAllCallBack
(
null
);
GSYVideoManager
.
releaseAllVideos
();
if
(
isTransition
&&
Build
.
VERSION
.
SDK_INT
>=
Build
.
VERSION_CODES
.
LOLLIPOP
)
{
super
.
onBackPressed
();
...
...
app/src/main/java/com/example/gsyvideoplayer/PlayPickActivity.java
浏览文件 @
024dd213
...
...
@@ -133,7 +133,7 @@ public class PlayPickActivity extends AppCompatActivity {
return
;
}
//释放所有
videoPlayer
.
set
Standard
VideoAllCallBack
(
null
);
videoPlayer
.
setVideoAllCallBack
(
null
);
GSYVideoManager
.
releaseAllVideos
();
if
(
isTransition
&&
Build
.
VERSION
.
SDK_INT
>=
Build
.
VERSION_CODES
.
LOLLIPOP
)
{
super
.
onBackPressed
();
...
...
app/src/main/java/com/example/gsyvideoplayer/ScrollingActivity.java
浏览文件 @
024dd213
...
...
@@ -75,7 +75,7 @@ public class ScrollingActivity extends AppCompatActivity {
.
setUrl
(
url
)
.
setCacheWithPlay
(
false
)
.
setVideoTitle
(
"测试视频"
)
.
set
Standard
VideoAllCallBack
(
new
GSYSampleCallBack
()
{
.
setVideoAllCallBack
(
new
GSYSampleCallBack
()
{
@Override
public
void
onPrepared
(
String
url
,
Object
...
objects
)
{
...
...
app/src/main/java/com/example/gsyvideoplayer/adapter/ListMultiNormalAdapter.java
浏览文件 @
024dd213
...
...
@@ -107,7 +107,7 @@ public class ListMultiNormalAdapter extends BaseAdapter {
holder
.
gsyVideoPlayer
.
loadCoverImage
(
url
,
R
.
mipmap
.
xxx2
);
}
holder
.
gsyVideoPlayer
.
set
Standard
VideoAllCallBack
(
new
GSYSampleCallBack
()
{
holder
.
gsyVideoPlayer
.
setVideoAllCallBack
(
new
GSYSampleCallBack
()
{
@Override
...
...
app/src/main/java/com/example/gsyvideoplayer/adapter/ListNormalAdapter.java
浏览文件 @
024dd213
...
...
@@ -157,7 +157,7 @@ public class ListNormalAdapter extends BaseAdapter {
holder
.
gsyVideoPlayer
.
setPlayPosition
(
position
);
holder
.
gsyVideoPlayer
.
set
Standard
VideoAllCallBack
(
new
GSYSampleCallBack
()
{
holder
.
gsyVideoPlayer
.
setVideoAllCallBack
(
new
GSYSampleCallBack
()
{
@Override
public
void
onClickStartIcon
(
String
url
,
Object
...
objects
)
{
super
.
onClickStartIcon
(
url
,
objects
);
...
...
app/src/main/java/com/example/gsyvideoplayer/holder/RecyclerItemNormalHolder.java
浏览文件 @
024dd213
...
...
@@ -77,7 +77,7 @@ public class RecyclerItemNormalHolder extends RecyclerItemBaseHolder {
.
setShowFullAnimation
(
true
)
.
setNeedLockFull
(
true
)
.
setPlayPosition
(
position
)
.
set
Standard
VideoAllCallBack
(
new
GSYSampleCallBack
()
{
.
setVideoAllCallBack
(
new
GSYSampleCallBack
()
{
@Override
public
void
onPrepared
(
String
url
,
Object
...
objects
)
{
super
.
onPrepared
(
url
,
objects
);
...
...
app/src/main/java/com/example/gsyvideoplayer/listener/SampleListener.java
浏览文件 @
024dd213
package
com.example.gsyvideoplayer.listener
;
import
com.shuyu.gsyvideoplayer.listener.
Standard
VideoAllCallBack
;
import
com.shuyu.gsyvideoplayer.listener.VideoAllCallBack
;
/**
* Created by shuyu on 2016/11/23.
*/
public
class
SampleListener
implements
Standard
VideoAllCallBack
{
public
class
SampleListener
implements
VideoAllCallBack
{
//加载成功,objects[0]是title,object[1]是当前所处播放器(全屏或非全屏)
@Override
...
...
app/src/main/java/com/example/gsyvideoplayer/utils/SmallVideoHelper.java
浏览文件 @
024dd213
...
...
@@ -15,7 +15,6 @@ import android.widget.FrameLayout;
import
com.shuyu.gsyvideoplayer.builder.GSYVideoOptionBuilder
;
import
com.shuyu.gsyvideoplayer.listener.GSYVideoProgressListener
;
import
com.shuyu.gsyvideoplayer.listener.LockClickListener
;
import
com.shuyu.gsyvideoplayer.listener.StandardVideoAllCallBack
;
import
com.shuyu.gsyvideoplayer.listener.VideoAllCallBack
;
import
com.shuyu.gsyvideoplayer.render.view.GSYVideoGLView
;
import
com.shuyu.gsyvideoplayer.utils.*
;
...
...
@@ -702,10 +701,6 @@ public class SmallVideoHelper {
return
mVideoAllCallBack
;
}
public
StandardVideoAllCallBack
getStandardVideoAllCallBack
()
{
return
mStandardVideoAllCallBack
;
}
public
LockClickListener
getLockClickListener
()
{
return
mLockClickListener
;
}
...
...
app/src/main/java/com/example/gsyvideoplayer/video/MultiSampleVideo.java
浏览文件 @
024dd213
...
...
@@ -92,6 +92,18 @@ public class MultiSampleVideo extends SampleCoverVideo {
return
null
;
}
@Override
protected
int
getFullId
()
{
return
CustomManager
.
FULLSCREEN_ID
;
}
@Override
protected
int
getSmallId
()
{
return
CustomManager
.
SMALL_ID
;
}
public
String
getKey
()
{
if
(
mPlayPosition
==
-
22
)
{
Debuger
.
printfError
(
getClass
().
getSimpleName
()
+
" used getKey() "
+
"******* PlayPosition never set. ********"
);
...
...
app/src/main/java/com/example/gsyvideoplayer/video/manager/CustomManager.java
浏览文件 @
024dd213
...
...
@@ -15,7 +15,6 @@ import java.util.Map;
import
tv.danmaku.ijk.media.player.IjkLibLoader
;
import
static
com
.
shuyu
.
gsyvideoplayer
.
utils
.
CommonUtil
.
hideNavKey
;
import
static
com
.
shuyu
.
gsyvideoplayer
.
video
.
base
.
GSYBaseVideoPlayer
.
FULLSCREEN_ID
;
/**
* 多个播放的管理器
...
...
@@ -24,6 +23,10 @@ import static com.shuyu.gsyvideoplayer.video.base.GSYBaseVideoPlayer.FULLSCREEN_
public
class
CustomManager
extends
GSYVideoBaseManager
{
public
static
final
int
SMALL_ID
=
86598
;
public
static
final
int
FULLSCREEN_ID
=
86597
;
public
static
String
TAG
=
"GSYVideoManager"
;
private
static
Map
<
String
,
CustomManager
>
sMap
=
new
HashMap
<>();
...
...
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/GSYBaseActivityDetail.java
浏览文件 @
024dd213
...
...
@@ -6,7 +6,7 @@ import android.support.v7.app.AppCompatActivity;
import
android.view.View
;
import
com.shuyu.gsyvideoplayer.builder.GSYVideoOptionBuilder
;
import
com.shuyu.gsyvideoplayer.listener.
Standard
VideoAllCallBack
;
import
com.shuyu.gsyvideoplayer.listener.VideoAllCallBack
;
import
com.shuyu.gsyvideoplayer.utils.OrientationUtils
;
import
com.shuyu.gsyvideoplayer.video.base.GSYBaseVideoPlayer
;
...
...
@@ -14,7 +14,7 @@ import com.shuyu.gsyvideoplayer.video.base.GSYBaseVideoPlayer;
* 详情模式播放页面基础类
* Created by guoshuyu on 2017/9/14.
*/
public
abstract
class
GSYBaseActivityDetail
<
T
extends
GSYBaseVideoPlayer
>
extends
AppCompatActivity
implements
Standard
VideoAllCallBack
{
public
abstract
class
GSYBaseActivityDetail
<
T
extends
GSYBaseVideoPlayer
>
extends
AppCompatActivity
implements
VideoAllCallBack
{
protected
boolean
isPlay
;
...
...
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/GSYVideoADManager.java
浏览文件 @
024dd213
...
...
@@ -15,7 +15,6 @@ import java.io.File;
import
tv.danmaku.ijk.media.player.IjkLibLoader
;
import
static
com
.
shuyu
.
gsyvideoplayer
.
utils
.
CommonUtil
.
hideNavKey
;
import
static
com
.
shuyu
.
gsyvideoplayer
.
video
.
base
.
GSYBaseVideoPlayer
.
FULLSCREEN_ID
;
/**
* 视频管理,单例
...
...
@@ -24,6 +23,10 @@ import static com.shuyu.gsyvideoplayer.video.base.GSYBaseVideoPlayer.FULLSCREEN_
public
class
GSYVideoADManager
extends
GSYVideoBaseManager
{
public
static
final
int
SMALL_ID
=
95598
;
public
static
final
int
FULLSCREEN_ID
=
95597
;
public
static
String
TAG
=
"GSYVideoADManager"
;
@SuppressLint
(
"StaticFieldLeak"
)
...
...
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/GSYVideoManager.java
浏览文件 @
024dd213
...
...
@@ -16,7 +16,6 @@ import java.io.File;
import
tv.danmaku.ijk.media.player.IjkLibLoader
;
import
static
com
.
shuyu
.
gsyvideoplayer
.
utils
.
CommonUtil
.
hideNavKey
;
import
static
com
.
shuyu
.
gsyvideoplayer
.
video
.
base
.
GSYBaseVideoPlayer
.
FULLSCREEN_ID
;
/**
...
...
@@ -26,6 +25,10 @@ import static com.shuyu.gsyvideoplayer.video.base.GSYBaseVideoPlayer.FULLSCREEN_
public
class
GSYVideoManager
extends
GSYVideoBaseManager
{
public
static
final
int
SMALL_ID
=
85598
;
public
static
final
int
FULLSCREEN_ID
=
85597
;
public
static
String
TAG
=
"GSYVideoManager"
;
@SuppressLint
(
"StaticFieldLeak"
)
...
...
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/builder/GSYVideoOptionBuilder.java
浏览文件 @
024dd213
...
...
@@ -7,7 +7,6 @@ import com.shuyu.gsyvideoplayer.listener.GSYVideoProgressListener;
import
com.shuyu.gsyvideoplayer.render.view.GSYVideoGLView
;
import
com.shuyu.gsyvideoplayer.render.effect.NoEffect
;
import
com.shuyu.gsyvideoplayer.listener.LockClickListener
;
import
com.shuyu.gsyvideoplayer.listener.StandardVideoAllCallBack
;
import
com.shuyu.gsyvideoplayer.listener.VideoAllCallBack
;
import
com.shuyu.gsyvideoplayer.video.base.GSYBaseVideoPlayer
;
import
com.shuyu.gsyvideoplayer.video.StandardGSYVideoPlayer
;
...
...
@@ -105,6 +104,12 @@ public class GSYVideoOptionBuilder {
//是否播放器当失去音频焦点
protected
boolean
mReleaseWhenLossAudio
=
true
;
//是否需要在利用window实现全屏幕的时候隐藏actionbar
protected
boolean
mActionBar
=
false
;
//是否需要在利用window实现全屏幕的时候隐藏statusbar
protected
boolean
mStatusBar
=
false
;
//播放的tag,防止错误,因为普通的url也可能重复
protected
String
mPlayTag
=
""
;
...
...
@@ -123,9 +128,6 @@ public class GSYVideoOptionBuilder {
//视频状体回调
protected
VideoAllCallBack
mVideoAllCallBack
;
//标准播放器的回调
protected
StandardVideoAllCallBack
mStandardVideoAllCallBack
;
//点击锁屏的回调
protected
LockClickListener
mLockClickListener
;
...
...
@@ -408,11 +410,6 @@ public class GSYVideoOptionBuilder {
}
public
GSYVideoOptionBuilder
setStandardVideoAllCallBack
(
StandardVideoAllCallBack
standardVideoAllCallBack
)
{
this
.
mStandardVideoAllCallBack
=
standardVideoAllCallBack
;
return
this
;
}
/**
* 进度回调
*/
...
...
@@ -525,11 +522,17 @@ public class GSYVideoOptionBuilder {
return
this
;
}
public
void
build
(
StandardGSYVideoPlayer
gsyVideoPlayer
)
{
if
(
mStandardVideoAllCallBack
!=
null
)
{
gsyVideoPlayer
.
setStandardVideoAllCallBack
(
mStandardVideoAllCallBack
);
public
GSYVideoOptionBuilder
setFullHideActionBar
(
boolean
actionBar
)
{
this
.
mActionBar
=
actionBar
;
return
this
;
}
public
GSYVideoOptionBuilder
setFullHideStatusBar
(
boolean
statusBar
)
{
this
.
mStatusBar
=
statusBar
;
return
this
;
}
public
void
build
(
StandardGSYVideoPlayer
gsyVideoPlayer
)
{
if
(
mBottomShowProgressDrawable
!=
null
&&
mBottomShowProgressThumbDrawable
!=
null
)
{
gsyVideoPlayer
.
setBottomShowProgressBarDrawable
(
mBottomShowProgressDrawable
,
mBottomShowProgressThumbDrawable
);
}
...
...
@@ -576,7 +579,7 @@ public class GSYVideoOptionBuilder {
gsyVideoPlayer
.
setShowFullAnimation
(
mShowFullAnimation
);
gsyVideoPlayer
.
setLooping
(
mLooping
);
if
(
m
StandardVideoAllCallBack
=
=
null
)
{
if
(
m
VideoAllCallBack
!
=
null
)
{
gsyVideoPlayer
.
setVideoAllCallBack
(
mVideoAllCallBack
);
}
if
(
mGSYVideoProgressListener
!=
null
)
{
...
...
@@ -592,6 +595,8 @@ public class GSYVideoOptionBuilder {
gsyVideoPlayer
.
setEffectFilter
(
mEffectFilter
);
gsyVideoPlayer
.
setStartAfterPrepared
(
mStartAfterPrepared
);
gsyVideoPlayer
.
setReleaseWhenLossAudio
(
mReleaseWhenLossAudio
);
gsyVideoPlayer
.
setFullHideActionBar
(
mActionBar
);
gsyVideoPlayer
.
setFullHideStatusBar
(
mStatusBar
);
if
(
mEnlargeImageRes
>
0
)
{
gsyVideoPlayer
.
setEnlargeImageRes
(
mEnlargeImageRes
);
}
...
...
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/listener/GSYSampleCallBack.java
浏览文件 @
024dd213
...
...
@@ -5,7 +5,7 @@ package com.shuyu.gsyvideoplayer.listener;
* Created by shuyu on 2016/11/23.
*/
public
class
GSYSampleCallBack
implements
Standard
VideoAllCallBack
{
public
class
GSYSampleCallBack
implements
VideoAllCallBack
{
//加载成功,objects[0]是title,object[1]是当前所处播放器(全屏或非全屏)
@Override
...
...
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/listener/StandardVideoAllCallBack.java
已删除
100644 → 0
浏览文件 @
41ba66b6
package
com.shuyu.gsyvideoplayer.listener
;
public
interface
StandardVideoAllCallBack
extends
VideoAllCallBack
{
}
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/utils/GSYVideoHelper.java
浏览文件 @
024dd213
...
...
@@ -15,7 +15,6 @@ import android.widget.FrameLayout;
import
com.shuyu.gsyvideoplayer.builder.GSYVideoOptionBuilder
;
import
com.shuyu.gsyvideoplayer.listener.GSYVideoProgressListener
;
import
com.shuyu.gsyvideoplayer.listener.LockClickListener
;
import
com.shuyu.gsyvideoplayer.listener.StandardVideoAllCallBack
;
import
com.shuyu.gsyvideoplayer.listener.VideoAllCallBack
;
import
com.shuyu.gsyvideoplayer.render.view.GSYVideoGLView
;
import
com.shuyu.gsyvideoplayer.video.StandardGSYVideoPlayer
;
...
...
@@ -700,10 +699,6 @@ public class GSYVideoHelper {
return
mVideoAllCallBack
;
}
public
StandardVideoAllCallBack
getStandardVideoAllCallBack
()
{
return
mStandardVideoAllCallBack
;
}
public
LockClickListener
getLockClickListener
()
{
return
mLockClickListener
;
}
...
...
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/utils/ListVideoUtil.java
浏览文件 @
024dd213
...
...
@@ -11,8 +11,8 @@ import android.view.View;
import
android.view.ViewGroup
;
import
android.widget.FrameLayout
;
import
com.shuyu.gsyvideoplayer.listener.VideoAllCallBack
;
import
com.shuyu.gsyvideoplayer.video.base.GSYVideoPlayer
;
import
com.shuyu.gsyvideoplayer.listener.StandardVideoAllCallBack
;
import
com.shuyu.gsyvideoplayer.video.base.GSYBaseVideoPlayer
;
import
com.shuyu.gsyvideoplayer.video.StandardGSYVideoPlayer
;
import
com.transitionseverywhere.TransitionManager
;
...
...
@@ -44,7 +44,7 @@ public class ListVideoUtil {
private
ViewGroup
listParent
;
//记录列表中item的父布局
private
ViewGroup
.
LayoutParams
listParams
;
private
OrientationUtils
orientationUtils
;
private
Standard
VideoAllCallBack
videoAllCallBack
;
private
VideoAllCallBack
videoAllCallBack
;
private
String
url
;
private
Context
context
;
private
File
cachePath
;
...
...
@@ -518,9 +518,9 @@ public class ListVideoUtil {
*
* @param videoAllCallBack 回调
*/
public
void
setVideoAllCallBack
(
Standard
VideoAllCallBack
videoAllCallBack
)
{
public
void
setVideoAllCallBack
(
VideoAllCallBack
videoAllCallBack
)
{
this
.
videoAllCallBack
=
videoAllCallBack
;
gsyVideoPlayer
.
set
Standard
VideoAllCallBack
(
videoAllCallBack
);
gsyVideoPlayer
.
setVideoAllCallBack
(
videoAllCallBack
);
}
public
int
getPlayPosition
()
{
...
...
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/video/GSYADVideoPlayer.java
浏览文件 @
024dd213
...
...
@@ -4,6 +4,8 @@ import android.content.Context;
import
android.graphics.Color
;
import
android.util.AttributeSet
;
import
android.view.View
;
import
android.view.ViewGroup
;
import
android.view.Window
;
import
android.widget.ImageView
;
import
android.widget.TextView
;
...
...
@@ -91,6 +93,16 @@ public class GSYADVideoPlayer extends StandardGSYVideoPlayer {
}
@Override
protected
int
getFullId
()
{
return
GSYVideoADManager
.
FULLSCREEN_ID
;
}
@Override
protected
int
getSmallId
()
{
return
GSYVideoADManager
.
SMALL_ID
;
}
@Override
public
void
onPrepared
()
{
super
.
onPrepared
();
...
...
@@ -217,4 +229,18 @@ public class GSYADVideoPlayer extends StandardGSYVideoPlayer {
}
}
/**
* 移除没用的
*/
public
void
removeFullWindowViewOnly
()
{
ViewGroup
vp
=
(
ViewGroup
)
(
CommonUtil
.
scanForActivity
(
getContext
())).
findViewById
(
Window
.
ID_ANDROID_CONTENT
);
View
old
=
vp
.
findViewById
(
getFullId
());
if
(
old
!=
null
)
{
if
(
old
.
getParent
()
!=
null
)
{
ViewGroup
viewGroup
=
(
ViewGroup
)
old
.
getParent
();
vp
.
removeView
(
viewGroup
);
}
}
}
}
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/video/StandardGSYVideoPlayer.java
浏览文件 @
024dd213
...
...
@@ -20,7 +20,6 @@ import android.widget.Toast;
import
com.shuyu.gsyvideoplayer.R
;
import
com.shuyu.gsyvideoplayer.listener.GSYVideoShotListener
;
import
com.shuyu.gsyvideoplayer.listener.GSYVideoShotSaveListener
;
import
com.shuyu.gsyvideoplayer.listener.StandardVideoAllCallBack
;
import
com.shuyu.gsyvideoplayer.utils.Debuger
;
import
com.shuyu.gsyvideoplayer.utils.NetworkUtils
;
import
com.shuyu.gsyvideoplayer.video.base.GSYBaseVideoPlayer
;
...
...
@@ -38,8 +37,6 @@ import moe.codeest.enviews.ENPlayView;
public
class
StandardGSYVideoPlayer
extends
GSYVideoPlayer
{
protected
StandardVideoAllCallBack
mStandardVideoAllCallBack
;
//亮度dialog
protected
Dialog
mBrightnessDialog
;
...
...
@@ -132,9 +129,9 @@ public class StandardGSYVideoPlayer extends GSYVideoPlayer {
*/
@Override
public
void
startPlayLogic
()
{
if
(
m
Standard
VideoAllCallBack
!=
null
)
{
if
(
mVideoAllCallBack
!=
null
)
{
Debuger
.
printfLog
(
"onClickStartThumb"
);
m
Standard
VideoAllCallBack
.
onClickStartThumb
(
mOriginUrl
,
mTitle
,
StandardGSYVideoPlayer
.
this
);
mVideoAllCallBack
.
onClickStartThumb
(
mOriginUrl
,
mTitle
,
StandardGSYVideoPlayer
.
this
);
}
prepareVideo
();
startDismissControlViewTimer
();
...
...
@@ -363,7 +360,6 @@ public class StandardGSYVideoPlayer extends GSYVideoPlayer {
GSYBaseVideoPlayer
gsyBaseVideoPlayer
=
super
.
startWindowFullscreen
(
context
,
actionBar
,
statusBar
);
if
(
gsyBaseVideoPlayer
!=
null
)
{
StandardGSYVideoPlayer
gsyVideoPlayer
=
(
StandardGSYVideoPlayer
)
gsyBaseVideoPlayer
;
gsyVideoPlayer
.
setStandardVideoAllCallBack
(
mStandardVideoAllCallBack
);
gsyVideoPlayer
.
setLockClickListener
(
mLockClickListener
);
gsyVideoPlayer
.
setNeedLockFull
(
isNeedLockFull
());
initFullUI
(
gsyVideoPlayer
);
...
...
@@ -829,11 +825,6 @@ public class StandardGSYVideoPlayer extends GSYVideoPlayer {
}
public
void
setStandardVideoAllCallBack
(
StandardVideoAllCallBack
standardVideoAllCallBack
)
{
this
.
mStandardVideoAllCallBack
=
standardVideoAllCallBack
;
setVideoAllCallBack
(
standardVideoAllCallBack
);
}
/************************************* 关于截图的 ****************************************/
/**
...
...
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/video/base/GSYBaseVideoPlayer.java
浏览文件 @
024dd213
...
...
@@ -36,10 +36,6 @@ import static com.shuyu.gsyvideoplayer.utils.CommonUtil.showSupportActionBar;
public
abstract
class
GSYBaseVideoPlayer
extends
GSYVideoControlView
{
public
static
final
int
SMALL_ID
=
85598
;
public
static
final
int
FULLSCREEN_ID
=
85597
;
//保存系统状态ui
protected
int
mSystemUiVisibility
;
...
...
@@ -217,7 +213,10 @@ public abstract class GSYBaseVideoPlayer extends GSYVideoControlView {
to
.
mStartAfterPrepared
=
from
.
mStartAfterPrepared
;
to
.
mPauseBeforePrepared
=
from
.
mPauseBeforePrepared
;
to
.
mReleaseWhenLossAudio
=
from
.
mReleaseWhenLossAudio
;
if
(
from
.
mSetUpLazy
)
{
to
.
mVideoAllCallBack
=
from
.
mVideoAllCallBack
;
to
.
mActionBar
=
from
.
mActionBar
;
to
.
mStatusBar
=
from
.
mStatusBar
;
if
(
from
.
mSetUpLazy
)
{
to
.
setUpLazy
(
from
.
mOriginUrl
,
from
.
mCache
,
from
.
mCachePath
,
from
.
mMapHeadData
,
from
.
mTitle
);
to
.
mUrl
=
from
.
mUrl
;
}
else
{
...
...
@@ -361,7 +360,7 @@ public abstract class GSYBaseVideoPlayer extends GSYVideoControlView {
final
ViewGroup
vp
=
getViewGroup
();
final
View
oldF
=
vp
.
findViewById
(
FULLSCREEN_ID
);
final
View
oldF
=
vp
.
findViewById
(
getFullId
()
);
if
(
oldF
!=
null
)
{
//此处fix bug#265,推出全屏的时候,虚拟按键问题
GSYVideoPlayer
gsyVideoPlayer
=
(
GSYVideoPlayer
)
oldF
;
...
...
@@ -385,7 +384,7 @@ public abstract class GSYBaseVideoPlayer extends GSYVideoControlView {
final
ViewGroup
vp
=
getViewGroup
();
final
View
oldF
=
vp
.
findViewById
(
FULLSCREEN_ID
);
final
View
oldF
=
vp
.
findViewById
(
getFullId
()
);
final
GSYVideoPlayer
gsyVideoPlayer
;
if
(
oldF
!=
null
)
{
gsyVideoPlayer
=
(
GSYVideoPlayer
)
oldF
;
...
...
@@ -439,6 +438,10 @@ public abstract class GSYBaseVideoPlayer extends GSYVideoControlView {
postDelayed
(
mCheckoutTask
,
500
);
}
protected
abstract
int
getFullId
();
protected
abstract
int
getSmallId
();
/************************* 开放接口 *************************/
/**
...
...
@@ -467,6 +470,16 @@ public abstract class GSYBaseVideoPlayer extends GSYVideoControlView {
}
/**
* 利用window层播放全屏效果
*
* @param context
*/
@SuppressWarnings
(
"ResourceType, unchecked"
)
public
GSYBaseVideoPlayer
startWindowFullscreen
(
final
Context
context
)
{
return
startWindowFullscreen
(
context
,
mActionBar
,
mStatusBar
);
}
/**
* 利用window层播放全屏效果
*
...
...
@@ -477,6 +490,7 @@ public abstract class GSYBaseVideoPlayer extends GSYVideoControlView {
@SuppressWarnings
(
"ResourceType, unchecked"
)
public
GSYBaseVideoPlayer
startWindowFullscreen
(
final
Context
context
,
final
boolean
actionBar
,
final
boolean
statusBar
)
{
//TODO mSystemUiVisibility保存在广告切换中需要特殊处理
mSystemUiVisibility
=
((
Activity
)
context
).
getWindow
().
getDecorView
().
getSystemUiVisibility
();
hideSupportActionBar
(
context
,
actionBar
,
statusBar
);
...
...
@@ -495,7 +509,7 @@ public abstract class GSYBaseVideoPlayer extends GSYVideoControlView {
final
ViewGroup
vp
=
getViewGroup
();
removeVideo
(
vp
,
FULLSCREEN_ID
);
removeVideo
(
vp
,
getFullId
()
);
//处理暂停的逻辑
pauseFullCoverLogic
();
...
...
@@ -527,7 +541,7 @@ public abstract class GSYBaseVideoPlayer extends GSYVideoControlView {
gsyVideoPlayer
=
constructor
.
newInstance
(
getActivityContext
(),
true
);
}
gsyVideoPlayer
.
setId
(
FULLSCREEN_ID
);
gsyVideoPlayer
.
setId
(
getFullId
()
);
gsyVideoPlayer
.
setIfCurrentIsFullscreen
(
true
);
gsyVideoPlayer
.
setVideoAllCallBack
(
mVideoAllCallBack
);
...
...
@@ -609,7 +623,7 @@ public abstract class GSYBaseVideoPlayer extends GSYVideoControlView {
final
ViewGroup
vp
=
getViewGroup
();
removeVideo
(
vp
,
SMALL_ID
);
removeVideo
(
vp
,
getSmallId
()
);
if
(
mTextureViewContainer
.
getChildCount
()
>
0
)
{
mTextureViewContainer
.
removeAllViews
();
...
...
@@ -618,7 +632,7 @@ public abstract class GSYBaseVideoPlayer extends GSYVideoControlView {
try
{
Constructor
<
GSYBaseVideoPlayer
>
constructor
=
(
Constructor
<
GSYBaseVideoPlayer
>)
GSYBaseVideoPlayer
.
this
.
getClass
().
getConstructor
(
Context
.
class
);
GSYBaseVideoPlayer
gsyVideoPlayer
=
constructor
.
newInstance
(
getActivityContext
());
gsyVideoPlayer
.
setId
(
SMALL_ID
);
gsyVideoPlayer
.
setId
(
getSmallId
()
);
LayoutParams
lpParent
=
new
LayoutParams
(
ViewGroup
.
LayoutParams
.
MATCH_PARENT
,
ViewGroup
.
LayoutParams
.
MATCH_PARENT
);
FrameLayout
frameLayout
=
new
FrameLayout
(
mContext
);
...
...
@@ -670,8 +684,8 @@ public abstract class GSYBaseVideoPlayer extends GSYVideoControlView {
@SuppressWarnings
(
"ResourceType"
)
public
void
hideSmallVideo
()
{
final
ViewGroup
vp
=
getViewGroup
();
GSYVideoPlayer
gsyVideoPlayer
=
(
GSYVideoPlayer
)
vp
.
findViewById
(
SMALL_ID
);
removeVideo
(
vp
,
SMALL_ID
);
GSYVideoPlayer
gsyVideoPlayer
=
(
GSYVideoPlayer
)
vp
.
findViewById
(
getSmallId
()
);
removeVideo
(
vp
,
getSmallId
()
);
mCurrentState
=
getGSYVideoManager
().
getLastState
();
if
(
gsyVideoPlayer
!=
null
)
{
cloneParams
(
gsyVideoPlayer
,
this
);
...
...
@@ -747,7 +761,7 @@ public abstract class GSYBaseVideoPlayer extends GSYVideoControlView {
@SuppressWarnings
(
"ResourceType"
)
public
GSYVideoPlayer
getFullWindowPlayer
()
{
ViewGroup
vp
=
(
ViewGroup
)
(
CommonUtil
.
scanForActivity
(
getContext
())).
findViewById
(
Window
.
ID_ANDROID_CONTENT
);
final
View
full
=
vp
.
findViewById
(
FULLSCREEN_ID
);
final
View
full
=
vp
.
findViewById
(
getFullId
()
);
GSYVideoPlayer
gsyVideoPlayer
=
null
;
if
(
full
!=
null
)
{
gsyVideoPlayer
=
(
GSYVideoPlayer
)
full
;
...
...
@@ -763,7 +777,7 @@ public abstract class GSYBaseVideoPlayer extends GSYVideoControlView {
@SuppressWarnings
(
"ResourceType"
)
public
GSYVideoPlayer
getSmallWindowPlayer
()
{
ViewGroup
vp
=
(
ViewGroup
)
(
CommonUtil
.
scanForActivity
(
getContext
())).
findViewById
(
Window
.
ID_ANDROID_CONTENT
);
final
View
small
=
vp
.
findViewById
(
SMALL_ID
);
final
View
small
=
vp
.
findViewById
(
getSmallId
()
);
GSYVideoPlayer
gsyVideoPlayer
=
null
;
if
(
small
!=
null
)
{
gsyVideoPlayer
=
(
GSYVideoPlayer
)
small
;
...
...
@@ -778,7 +792,7 @@ public abstract class GSYBaseVideoPlayer extends GSYVideoControlView {
if
(
getFullWindowPlayer
()
!=
null
)
{
return
getFullWindowPlayer
();
}
if
(
getSmallWindowPlayer
()
!=
null
)
{
if
(
getSmallWindowPlayer
()
!=
null
)
{
return
getSmallWindowPlayer
();
}
return
this
;
...
...
@@ -791,4 +805,12 @@ public abstract class GSYBaseVideoPlayer extends GSYVideoControlView {
public
void
setBackFromFullScreenListener
(
OnClickListener
backFromFullScreenListener
)
{
this
.
mBackFromFullScreenListener
=
backFromFullScreenListener
;
}
public
void
setFullHideActionBar
(
boolean
actionBar
)
{
this
.
mActionBar
=
actionBar
;
}
public
void
setFullHideStatusBar
(
boolean
statusBar
)
{
this
.
mStatusBar
=
statusBar
;
}
}
gsyVideoPlayer-java/src/main/java/com/shuyu/gsyvideoplayer/video/base/GSYVideoPlayer.java
浏览文件 @
024dd213
...
...
@@ -60,4 +60,15 @@ public abstract class GSYVideoPlayer extends GSYBaseVideoPlayer {
protected
HttpProxyCacheServer
getProxy
(
Context
context
,
File
file
)
{
return
GSYVideoManager
.
getProxy
(
context
,
file
);
}
@Override
protected
int
getFullId
()
{
return
GSYVideoManager
.
FULLSCREEN_ID
;
}
@Override
protected
int
getSmallId
()
{
return
GSYVideoManager
.
SMALL_ID
;
}
}
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录