From 760aee20870a34e6130a1c12237c5b747e2b00bd Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 28 一月 2022 12:58:40 +0800 Subject: [PATCH] 隐私合规,青少年模式,64位兼容 --- library-video/src/main/java/com/yeshi/video/ui/VideoDetailActivity.java | 101 +++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 83 insertions(+), 18 deletions(-) diff --git a/library-video/src/main/java/com/yeshi/video/ui/VideoDetailActivity.java b/library-video/src/main/java/com/yeshi/video/ui/VideoDetailActivity.java index 21af864..012f8c7 100644 --- a/library-video/src/main/java/com/yeshi/video/ui/VideoDetailActivity.java +++ b/library-video/src/main/java/com/yeshi/video/ui/VideoDetailActivity.java @@ -29,6 +29,7 @@ import com.bumptech.glide.Glide; import com.bumptech.glide.request.target.SimpleTarget; import com.bumptech.glide.request.transition.Transition; +import com.bytedance.sdk.openadsdk.TTAdSdk; import com.bytedance.sdk.openadsdk.TTFullScreenVideoAd; import com.google.gson.FieldNamingPolicy; import com.google.gson.Gson; @@ -40,6 +41,10 @@ import com.lcjian.library.util.SystemCommon; import com.lcjian.library.util.common.DimenUtils; import com.lcjian.library.util.common.StringUtils; +import com.qq.e.ads.cfg.VideoOption; +import com.qq.e.ads.interstitial2.UnifiedInterstitialAD; +import com.qq.e.ads.interstitial2.UnifiedInterstitialADListener; +import com.qq.e.comm.util.AdError; import com.umeng.socialize.UMShareAPI; import com.yeshi.base.entity.AccumulateRule; import com.yeshi.base.entity.ad.AdPositionEnum; @@ -52,8 +57,11 @@ import com.yeshi.base.entity.video.VideoResource; import com.yeshi.base.ui.BaseActivity; import com.yeshi.base.utils.BeibeiConstant; +import com.yeshi.base.utils.JsonUtil; import com.yeshi.base.utils.RouteConstant; import com.yeshi.base.utils.ad.AdUtil; +import com.yeshi.base.utils.ad.GDTConstant; +import com.yeshi.base.utils.ad.TTAdManagerHolder; import com.yeshi.base.utils.http.BasicTextHttpResponseHandler; import com.yeshi.video.R; import com.yeshi.video.entity.PushEpisode; @@ -493,7 +501,7 @@ if (!mFunshionPlayerFragment.isAdded()) { getSupportFragmentManager().beginTransaction().replace(R.id.fragment_video_play_container, mFunshionPlayerFragment).commit(); } - fl_video_play_background.setVisibility(View.GONE); + hideImage(); } else {// @@ -913,10 +921,7 @@ } - Gson gson = new GsonBuilder().setFieldNamingPolicy( - FieldNamingPolicy.UPPER_CAMEL_CASE) - .create(); - final VideoInfo videoInfo = gson + final VideoInfo videoInfo = JsonUtil.videoGson .fromJson(jsonObject.getJSONObject("Data") .toString(), new TypeToken<VideoInfo>() { @@ -1075,10 +1080,7 @@ Header[] headers, JSONObject jsonObject) throws Exception { if (jsonObject.getBoolean("IsPost")) { - Gson gson = new GsonBuilder().setFieldNamingPolicy( - FieldNamingPolicy.UPPER_CAMEL_CASE) - .create(); - VideoResource resource = gson.fromJson( + VideoResource resource = JsonUtil.videoGson.fromJson( jsonObject.getJSONObject("Data") .getJSONObject("Resource") .toString(), @@ -1228,9 +1230,7 @@ values.put(WatchHistoryTable.VIDEO_DETAIL_ID, videoDetailId); values.put(WatchHistoryTable.VIDEO_THIRD_TYPE, videoInfo.getThirdType()); - Gson gson = new GsonBuilder().setFieldNamingPolicy( - FieldNamingPolicy.UPPER_CAMEL_CASE).create(); - values.put(WatchHistoryTable.VIDEO_DETAIL, gson.toJson(videoInfo)); + values.put(WatchHistoryTable.VIDEO_DETAIL, JsonUtil.videoGson.toJson(videoInfo)); values.put(WatchHistoryTable.WATCH_TIME, 0); values.put(WatchHistoryTable.VIDEO_RESOURCE, from); values.put(WatchHistoryTable.VIDEO_RESOURCE_ID, resoureID); @@ -1284,18 +1284,83 @@ /** * 鍔犺浇鍏ㄥ睆瑙嗛骞垮憡 */ + private UnifiedInterstitialAD iad; + private void loadFullVideoAd() { if (adShown) return; adShown = true; if (AdUtil.getAdType(getApplicationContext(), AdPositionEnum.videoDetailFullVideo) != null) { - FullVideoAdManager.getInstance().loadAd(getApplicationContext(), new FullVideoAdManager.IFullVideoAdListener() { - @Override - public void onSuccess(TTFullScreenVideoAd ad) { - FullVideoAdManager.getInstance().showAd(VideoDetailActivity.this); - } - }); + + if (TTAdSdk.isInitSuccess()) { + FullVideoAdManager.getInstance().loadAd(getApplicationContext(), new FullVideoAdManager.IFullVideoAdListener() { + @Override + public void onSuccess(TTFullScreenVideoAd ad) { + FullVideoAdManager.getInstance().showAd(VideoDetailActivity.this); + } + }); + } else { + iad = new UnifiedInterstitialAD(this, getString(R.string.ad_gdt_pid_video_detail_insert), new UnifiedInterstitialADListener() { + + @Override + public void onADReceive() { + iad.showAsPopupWindow(VideoDetailActivity.this); + } + + @Override + public void onVideoCached() { + + } + + @Override + public void onNoAD(AdError adError) { + + Log.i("gdt", adError.toString()); + } + + @Override + public void onADOpened() { + + } + + @Override + public void onADExposure() { + + } + + @Override + public void onADClicked() { + + } + + @Override + public void onADLeftApplication() { + + } + + @Override + public void onADClosed() { + + } + + @Override + public void onRenderSuccess() { + + } + + @Override + public void onRenderFail() { + + } + }); + VideoOption.Builder builder = new VideoOption.Builder(); + VideoOption + option = builder.setAutoPlayMuted(true) + .setAutoPlayPolicy(VideoOption.AutoPlayPolicy.WIFI).build(); + iad.setVideoOption(option); + iad.loadAD(); + } } } } -- Gitblit v1.8.0