Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in / Register
Toggle navigation
Z
zxhc
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
王雪伟
zxhc
Commits
ace5ab79
Commit
ace5ab79
authored
Jul 14, 2021
by
王雪伟
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
激励视频布局
parent
a1e942ef
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
170 additions
and
76 deletions
+170
-76
MainActivity.java
app/src/main/java/com/ym/zxhcsdkaar/MainActivity.java
+33
-0
HcAdBean.java
zxhcsdk/src/main/java/com/ym/zxhcsdk/HcAdBean.java
+2
-1
RewardvideoPortraitADActivity.java
...ava/com/ym/zxhcsdk/ads/RewardvideoPortraitADActivity.java
+75
-38
ZXHCRewardVideoAD.java
.../src/main/java/com/ym/zxhcsdk/view/ZXHCRewardVideoAD.java
+27
-21
btn_bg.xml
zxhcsdk/src/main/res/drawable/btn_bg.xml
+15
-0
activity_rewardvideo_portrait_a_d.xml
...src/main/res/layout/activity_rewardvideo_portrait_a_d.xml
+18
-16
No files found.
app/src/main/java/com/ym/zxhcsdkaar/MainActivity.java
View file @
ace5ab79
...
@@ -17,6 +17,7 @@ import com.ym.zxhcsdk.ads.RewardVideoPlayerUtils;
...
@@ -17,6 +17,7 @@ import com.ym.zxhcsdk.ads.RewardVideoPlayerUtils;
import
com.ym.zxhcsdk.ads.RewardvideoPortraitADActivity
;
import
com.ym.zxhcsdk.ads.RewardvideoPortraitADActivity
;
import
com.ym.zxhcsdk.listener.FeedAdListener
;
import
com.ym.zxhcsdk.listener.FeedAdListener
;
import
com.ym.zxhcsdk.listener.RewardVideoAdLoadListener
;
import
com.ym.zxhcsdk.listener.RewardVideoAdLoadListener
;
import
com.ym.zxhcsdk.listener.RewardVideoAdShowListener
;
import
com.ym.zxhcsdk.listener.SplashAdListener
;
import
com.ym.zxhcsdk.listener.SplashAdListener
;
import
com.ym.zxhcsdk.manager.ZXHCADManager
;
import
com.ym.zxhcsdk.manager.ZXHCADManager
;
import
com.ym.zxhcsdk.manager.ZXHCAdViewManager
;
import
com.ym.zxhcsdk.manager.ZXHCAdViewManager
;
...
@@ -140,6 +141,7 @@ public class MainActivity extends Activity {
...
@@ -140,6 +141,7 @@ public class MainActivity extends Activity {
@Override
@Override
public
void
onClick
(
View
v
)
{
public
void
onClick
(
View
v
)
{
startActivity
(
new
Intent
(
MainActivity
.
this
,
RewardvideoPortraitADActivity
.
class
));
startActivity
(
new
Intent
(
MainActivity
.
this
,
RewardvideoPortraitADActivity
.
class
));
}
}
});
});
...
@@ -191,6 +193,37 @@ public class MainActivity extends Activity {
...
@@ -191,6 +193,37 @@ public class MainActivity extends Activity {
@Override
@Override
public
void
OnAdLoaded
()
{
public
void
OnAdLoaded
()
{
RewardVideoPlayerUtils
.
getInstance
().
setVideo
(
zxhcRewardVideoAD
);
RewardVideoPlayerUtils
.
getInstance
().
setVideo
(
zxhcRewardVideoAD
);
zxhcRewardVideoAD
.
showRewardAD
(
MainActivity
.
this
,
new
RewardVideoAdShowListener
()
{
@Override
public
void
OnAdShow
()
{
}
@Override
public
void
OnRewardVerify
()
{
}
@Override
public
void
OnAdClicked
()
{
}
@Override
public
void
OnVideoCompleted
()
{
}
@Override
public
void
OnAdClosed
()
{
}
@Override
public
void
OnVideoError
(
String
error
)
{
}
});
}
}
@Override
@Override
...
...
zxhcsdk/src/main/java/com/ym/zxhcsdk/HcAdBean.java
View file @
ace5ab79
package
com
.
ym
.
zxhcsdk
;
package
com
.
ym
.
zxhcsdk
;
import
java.io.Serializable
;
import
java.util.List
;
import
java.util.List
;
public
class
HcAdBean
{
public
class
HcAdBean
implements
Serializable
{
private
int
height
;
private
int
height
;
private
int
width
;
private
int
width
;
private
List
<
String
>
monitorUrl
;
private
List
<
String
>
monitorUrl
;
...
...
zxhcsdk/src/main/java/com/ym/zxhcsdk/ads/RewardvideoPortraitADActivity.java
View file @
ace5ab79
package
com
.
ym
.
zxhcsdk
.
ads
;
package
com
.
ym
.
zxhcsdk
.
ads
;
import
android.app.Activity
;
import
android.app.Activity
;
import
android.content.Intent
;
import
android.graphics.Bitmap
;
import
android.media.MediaPlayer
;
import
android.media.MediaPlayer
;
import
android.os.Bundle
;
import
android.os.Bundle
;
import
android.os.CountDownTimer
;
import
android.os.CountDownTimer
;
...
@@ -13,9 +15,14 @@ import android.widget.FrameLayout;
...
@@ -13,9 +15,14 @@ import android.widget.FrameLayout;
import
android.widget.ImageView
;
import
android.widget.ImageView
;
import
android.widget.TextView
;
import
android.widget.TextView
;
import
androidx.annotation.NonNull
;
import
androidx.annotation.NonNull
;
import
com.ym.zxhcsdk.HcAdBean
;
import
com.ym.zxhcsdk.HttpClientUtils
;
import
com.ym.zxhcsdk.R
;
import
com.ym.zxhcsdk.R
;
import
com.ym.zxhcsdk.view.ZXHCRewardVideoAD
;
import
com.ym.zxhcsdk.view.ZXHCRewardVideoAD
;
import
java.io.Serializable
;
public
class
RewardvideoPortraitADActivity
extends
Activity
implements
SurfaceHolder
.
Callback
{
public
class
RewardvideoPortraitADActivity
extends
Activity
implements
SurfaceHolder
.
Callback
{
private
MediaPlayer
mPlayer
=
null
;
private
MediaPlayer
mPlayer
=
null
;
...
@@ -30,17 +37,18 @@ public class RewardvideoPortraitADActivity extends Activity implements SurfaceHo
...
@@ -30,17 +37,18 @@ public class RewardvideoPortraitADActivity extends Activity implements SurfaceHo
private
TextView
TopTimeTv
;
private
TextView
TopTimeTv
;
private
ImageView
TopClose
;
private
ImageView
TopClose
;
public
ZXHCRewardVideoAD
mZxhcRewardVideoAD
;
//
public ZXHCRewardVideoAD mZxhcRewardVideoAD;
private
HcAdBean
zxRewardAdBean
;
@Override
@Override
protected
void
onCreate
(
Bundle
savedInstanceState
)
{
protected
void
onCreate
(
Bundle
savedInstanceState
)
{
super
.
onCreate
(
savedInstanceState
);
super
.
onCreate
(
savedInstanceState
);
setContentView
(
R
.
layout
.
activity_rewardvideo_portrait_a_d
);
setContentView
(
R
.
layout
.
activity_rewardvideo_portrait_a_d
);
mZxhcRewardVideoAD
=
RewardVideoPlayerUtils
.
getInstance
().
getVideo
();
// mZxhcRewardVideoAD = RewardVideoPlayerUtils.getInstance().getVideo();
if
(
null
!=
mZxhcRewardVideoAD
)
{
mPlayer
=
RewardVideoMediaPlayer
.
getInstance
();
mPlayer
=
RewardVideoMediaPlayer
.
getInstance
();
}
zxRewardAdBean
=
(
HcAdBean
)
getIntent
().
getSerializableExtra
(
"ZXRewardAdBean"
);
bindViews
();
bindViews
();
}
}
...
@@ -59,6 +67,29 @@ public class RewardvideoPortraitADActivity extends Activity implements SurfaceHo
...
@@ -59,6 +67,29 @@ public class RewardvideoPortraitADActivity extends Activity implements SurfaceHo
//初始化SurfaceHolder类,SurfaceView的控制器
//初始化SurfaceHolder类,SurfaceView的控制器
surfaceHolder
=
sfv_reward_show
.
getHolder
();
surfaceHolder
=
sfv_reward_show
.
getHolder
();
surfaceHolder
.
addCallback
(
this
);
surfaceHolder
.
addCallback
(
this
);
//设置底部信息
bottomTitle
.
setText
(
zxRewardAdBean
.
getVideo_title
());
bottomDesc
.
setText
(
zxRewardAdBean
.
getVideo_desc
());
bottomBtnTv
.
setText
(
zxRewardAdBean
.
getVideo_iconbuttontext
());
HttpClientUtils
.
LoadImg
(
zxRewardAdBean
.
getVideo_icon_url
(),
new
HttpClientUtils
.
OnRequestImgCallBack
()
{
@Override
public
void
onSuccess
(
Bitmap
bitmap
)
{
runOnUiThread
(
new
Runnable
()
{
@Override
public
void
run
()
{
bottomIcon
.
setImageBitmap
(
bitmap
);
}
});
}
@Override
public
void
onError
(
String
errorMsg
)
{
}
});
SetAdVideo
();
SetAdVideo
();
// mPlayer = new MediaPlayer();
// mPlayer = new MediaPlayer();
...
@@ -74,9 +105,48 @@ public class RewardvideoPortraitADActivity extends Activity implements SurfaceHo
...
@@ -74,9 +105,48 @@ public class RewardvideoPortraitADActivity extends Activity implements SurfaceHo
});
});
}
}
private
void
SetAdVideo
(){
private
void
SetAdVideo
(){
TopClose
.
setVisibility
(
View
.
GONE
);
TopClose
.
setVisibility
(
View
.
GONE
);
TopTimeTv
.
setVisibility
(
View
.
VISIBLE
);
TopTimeTv
.
setVisibility
(
View
.
VISIBLE
);
//网络流媒体播放结束监听
mPlayer
.
setOnCompletionListener
(
new
MediaPlayer
.
OnCompletionListener
()
{
@Override
public
void
onCompletion
(
MediaPlayer
mp
)
{
Log
.
d
(
"wxw"
,
"MediaPlayer onCompletion"
);
TopClose
.
setVisibility
(
View
.
VISIBLE
);
TopTimeTv
.
setVisibility
(
View
.
GONE
);
}
});
//设置错误信息监听
mPlayer
.
setOnErrorListener
(
new
MediaPlayer
.
OnErrorListener
()
{
@Override
public
boolean
onError
(
MediaPlayer
mp
,
int
what
,
int
extra
)
{
Log
.
d
(
"wxw"
,
"MediaPlayer error "
+
what
+
" extra "
+
extra
);
TopClose
.
setVisibility
(
View
.
VISIBLE
);
TopTimeTv
.
setVisibility
(
View
.
GONE
);
return
false
;
}
});
//视频尺寸监听
mPlayer
.
setOnVideoSizeChangedListener
(
new
MediaPlayer
.
OnVideoSizeChangedListener
()
{
@Override
public
void
onVideoSizeChanged
(
MediaPlayer
mp
,
int
width
,
int
height
)
{
// int phoneWidth = PhoneUtils.getInstance().getScreenWidth(RewardvideoPortraitADActivity.this);
// float pro = height / (float) width;
// ViewGroup.LayoutParams layoutParams = frameView.getLayoutParams();
// layoutParams.width = phoneWidth;
// layoutParams.height = (int) (phoneWidth * pro);
// frameView.setLayoutParams(layoutParams);
Log
.
d
(
"wxw"
,
"mp.getCurrentPosition() "
+
mp
.
getCurrentPosition
());
}
});
}
}
@Override
@Override
...
@@ -88,39 +158,6 @@ public class RewardvideoPortraitADActivity extends Activity implements SurfaceHo
...
@@ -88,39 +158,6 @@ public class RewardvideoPortraitADActivity extends Activity implements SurfaceHo
}
}
//网络流媒体播放结束监听
mPlayer
.
setOnCompletionListener
(
new
MediaPlayer
.
OnCompletionListener
()
{
@Override
public
void
onCompletion
(
MediaPlayer
mp
)
{
Log
.
d
(
"wxw"
,
"MediaPlayer onCompletion"
);
TopClose
.
setVisibility
(
View
.
VISIBLE
);
TopTimeTv
.
setVisibility
(
View
.
GONE
);
}
});
//设置错误信息监听
mPlayer
.
setOnErrorListener
(
new
MediaPlayer
.
OnErrorListener
()
{
@Override
public
boolean
onError
(
MediaPlayer
mp
,
int
what
,
int
extra
)
{
Log
.
d
(
"wxw"
,
"MediaPlayer error "
+
what
+
" extra "
+
extra
);
TopClose
.
setVisibility
(
View
.
VISIBLE
);
TopTimeTv
.
setVisibility
(
View
.
GONE
);
return
false
;
}
});
//视频尺寸监听
mPlayer
.
setOnVideoSizeChangedListener
(
new
MediaPlayer
.
OnVideoSizeChangedListener
()
{
@Override
public
void
onVideoSizeChanged
(
MediaPlayer
mp
,
int
width
,
int
height
)
{
// int phoneWidth = PhoneUtils.getInstance().getScreenWidth(RewardvideoPortraitADActivity.this);
// float pro = height / (float) width;
// ViewGroup.LayoutParams layoutParams = frameView.getLayoutParams();
// layoutParams.width = phoneWidth;
// layoutParams.height = (int) (phoneWidth * pro);
// frameView.setLayoutParams(layoutParams);
Log
.
d
(
"wxw"
,
"mp.getCurrentPosition() "
+
mp
.
getCurrentPosition
());
}
});
//mPlayer.start();
//mPlayer.start();
}
}
...
...
zxhcsdk/src/main/java/com/ym/zxhcsdk/view/ZXHCRewardVideoAD.java
View file @
ace5ab79
...
@@ -9,6 +9,7 @@ import com.ym.zxhcsdk.HttpClientUtils;
...
@@ -9,6 +9,7 @@ import com.ym.zxhcsdk.HttpClientUtils;
import
com.ym.zxhcsdk.PhoneUtils
;
import
com.ym.zxhcsdk.PhoneUtils
;
import
com.ym.zxhcsdk.ZXHCConstant
;
import
com.ym.zxhcsdk.ZXHCConstant
;
import
com.ym.zxhcsdk.ads.RewardVideoMediaPlayer
;
import
com.ym.zxhcsdk.ads.RewardVideoMediaPlayer
;
import
com.ym.zxhcsdk.ads.RewardvideoPortraitADActivity
;
import
com.ym.zxhcsdk.listener.RewardVideoAdLoadListener
;
import
com.ym.zxhcsdk.listener.RewardVideoAdLoadListener
;
import
com.ym.zxhcsdk.listener.RewardVideoAdShowListener
;
import
com.ym.zxhcsdk.listener.RewardVideoAdShowListener
;
...
@@ -61,26 +62,26 @@ public class ZXHCRewardVideoAD implements Serializable {
...
@@ -61,26 +62,26 @@ public class ZXHCRewardVideoAD implements Serializable {
}
}
try
{
//
try {
isLoadFinish
=
false
;
//
isLoadFinish = false;
RewardVideoMediaPlayer
.
getInstance
().
setDataSource
(
"https://zx-cdn.zhangxinhulian.com/file/2020/5/8447fa5488ee19a54d2adbe8d127693045540211.mp4"
);
//
RewardVideoMediaPlayer.getInstance().setDataSource("https://zx-cdn.zhangxinhulian.com/file/2020/5/8447fa5488ee19a54d2adbe8d127693045540211.mp4");
// mPlayer.setDisplay(surfaceHolder);
//
// mPlayer.setDisplay(surfaceHolder);
RewardVideoMediaPlayer
.
getInstance
().
prepareAsync
();
//
RewardVideoMediaPlayer.getInstance().prepareAsync();
//网络流媒体的缓冲监听
//
//网络流媒体的缓冲监听
RewardVideoMediaPlayer
.
getInstance
().
setOnBufferingUpdateListener
(
new
MediaPlayer
.
OnBufferingUpdateListener
()
{
//
RewardVideoMediaPlayer.getInstance().setOnBufferingUpdateListener(new MediaPlayer.OnBufferingUpdateListener() {
@Override
//
@Override
public
void
onBufferingUpdate
(
MediaPlayer
mp
,
int
percent
)
{
//
public void onBufferingUpdate(MediaPlayer mp, int percent) {
Log
.
d
(
"wxw"
,
"percent"
+
percent
);
//
Log.d("wxw", "percent" + percent);
if
(
percent
==
100
){
//
if (percent==100){
// mp.start();
//
//
mp.start();
isLoadFinish
=
true
;
//
isLoadFinish = true;
}
//
}
Log
.
d
(
"wxw"
,
"mp.getCurrentPosition() "
+
mp
.
getCurrentPosition
());
//
Log.d("wxw", "mp.getCurrentPosition() " + mp.getCurrentPosition());
}
//
}
});
//
});
}
catch
(
IOException
e
)
{
//
} catch (IOException e) {
e
.
printStackTrace
();
//
e.printStackTrace();
}
//
}
}
}
@Override
@Override
...
@@ -102,6 +103,11 @@ public class ZXHCRewardVideoAD implements Serializable {
...
@@ -102,6 +103,11 @@ public class ZXHCRewardVideoAD implements Serializable {
* 播放激励视频
* 播放激励视频
*/
*/
public
void
showRewardAD
(
Activity
context
,
RewardVideoAdShowListener
listener
)
{
public
void
showRewardAD
(
Activity
context
,
RewardVideoAdShowListener
listener
)
{
if
(
adBean
!=
null
){
Intent
intent
=
new
Intent
(
context
,
RewardvideoPortraitADActivity
.
class
);
intent
.
putExtra
(
"ZXRewardAdBean"
,
adBean
);
context
.
startActivity
(
intent
);
}
}
}
}
}
zxhcsdk/src/main/res/drawable/btn_bg.xml
0 → 100644
View file @
ace5ab79
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<solid
android:color=
"#00a1a3a6"
/>
<padding
android:top=
"10dp"
android:bottom=
"10dp"
android:left=
"20dp"
android:right=
"20dp"
/>
<stroke
android:width=
"2dp"
android:color=
"#f2eada"
/>
<corners
android:radius=
"25dp"
/>
</shape>
\ No newline at end of file
zxhcsdk/src/main/res/layout/activity_rewardvideo_portrait_a_d.xml
View file @
ace5ab79
...
@@ -26,32 +26,32 @@
...
@@ -26,32 +26,32 @@
<ImageView
<ImageView
android:id=
"@+id/reward_ad_Voice"
android:id=
"@+id/reward_ad_Voice"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"20dp"
android:layout_marginLeft=
"20dp"
android:layout_marginTop=
"20dp"
android:layout_marginTop=
"20dp"
android:layout_height=
"wrap_content"
android:src=
"@mipmap/arrow_left"
/>
android:src=
"@mipmap/arrow_left"
/>
<View
<View
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_
weight=
"1
"
android:layout_
height=
"0dp
"
android:layout_
height=
"0dp"
/>
android:layout_
weight=
"1"
/>
<TextView
<TextView
android:id=
"@+id/reward_ad_time"
android:id=
"@+id/reward_ad_time"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"20dp"
android:layout_marginRight=
"20dp"
android:layout_marginRight=
"20dp"
android:textSize=
"20dp"
android:textColor=
"#000000"
android:text=
""
android:text=
""
android:layout_marginTop=
"20dp"
/>
android:textColor=
"#000000"
android:textSize=
"20dp"
/>
<ImageView
<ImageView
android:id=
"@+id/reward_ad_close"
android:id=
"@+id/reward_ad_close"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginRight=
"20dp"
android:layout_marginTop=
"20dp"
android:layout_marginTop=
"20dp"
android:layout_marginRight=
"20dp"
android:src=
"@mipmap/feedad_close"
/>
android:src=
"@mipmap/feedad_close"
/>
...
@@ -67,10 +67,10 @@
...
@@ -67,10 +67,10 @@
<ImageView
<ImageView
android:id=
"@+id/reward_ad_app_icon"
android:id=
"@+id/reward_ad_app_icon"
android:layout_width=
"
8
0dp"
android:layout_width=
"
7
0dp"
android:layout_height=
"
8
0dp"
android:layout_height=
"
7
0dp"
android:
layout_marginLeft=
"10dp
"
android:
scaleType=
"fitCenter
"
android:
background=
"#ffff00
"
/>
android:
layout_marginLeft=
"10dp
"
/>
<LinearLayout
<LinearLayout
android:id=
"@+id/reward_ad_desc_view"
android:id=
"@+id/reward_ad_desc_view"
...
@@ -87,7 +87,7 @@
...
@@ -87,7 +87,7 @@
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:ellipsize=
"end"
android:ellipsize=
"end"
android:lines=
"1"
android:lines=
"1"
android:text=
"
拼多多
"
android:text=
""
android:textColor=
"#000000"
android:textColor=
"#000000"
android:textSize=
"20dp"
android:textSize=
"20dp"
android:textStyle=
"bold"
/>
android:textStyle=
"bold"
/>
...
@@ -98,7 +98,7 @@
...
@@ -98,7 +98,7 @@
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:ellipsize=
"end"
android:ellipsize=
"end"
android:lines=
"1"
android:lines=
"1"
android:text=
"
拼拼多多拼多多拼多多拼多多拼多多多多
"
android:text=
""
android:textSize=
"15dp"
/>
android:textSize=
"15dp"
/>
...
@@ -107,11 +107,13 @@
...
@@ -107,11 +107,13 @@
<TextView
<TextView
android:id=
"@+id/reward_video_ad_btn"
android:id=
"@+id/reward_video_ad_btn"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"
wrap_content
"
android:layout_height=
"
50dp
"
android:layout_marginRight=
"10dp"
android:layout_marginRight=
"10dp"
android:background=
"@mipmap/btn"
android:textColor=
"#000000"
android:textSize=
"20dp"
android:background=
"@drawable/btn_bg"
android:gravity=
"center"
android:gravity=
"center"
android:text=
"
下载
"
/>
android:text=
"
11
"
/>
</LinearLayout>
</LinearLayout>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment