From dcdba2a9ad260a5b60225b6ee9b248674c1f6418 Mon Sep 17 00:00:00 2001 From: Jack <1484288157@qq.com> Date: Fri, 7 Feb 2020 18:35:54 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=89=E7=8E=AF=E5=8A=A9=E6=89=8BV4.0.0-?= =?UTF-8?q?=E8=A7=86=E9=A2=91=E5=8A=9F=E8=83=BD=E4=BC=98=E5=8C=96=EF=BC=88?= =?UTF-8?q?=E6=B8=B8=E6=88=8F=E8=AF=A6=E6=83=85=E9=A1=B6=E9=83=A8=E8=A7=86?= =?UTF-8?q?=E9=A2=91=EF=BC=891,2=20https://gitlab.ghzs.com/pm/halo-app-iss?= =?UTF-8?q?ues/issues/779?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/gh/common/constant/Constants.java | 2 ++ .../java/com/gh/gamecenter/MainActivity.java | 3 +++ .../gamedetail/GameDetailFragment.kt | 2 +- .../gamedetail/video/TopVideoView.kt | 22 ++++++++++++++----- .../video/detail/DetailPlayerView.kt | 5 ++--- 5 files changed, 24 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/com/gh/common/constant/Constants.java b/app/src/main/java/com/gh/common/constant/Constants.java index d8176d4080..63a0b54415 100644 --- a/app/src/main/java/com/gh/common/constant/Constants.java +++ b/app/src/main/java/com/gh/common/constant/Constants.java @@ -50,6 +50,8 @@ public class Constants { public static final String SP_SHOW_SLIDE_GUIDE = "show_slide_guide"; //视频详情点击引导 public static final String SP_SHOW_CLICK_GUIDE = "show_click_guide"; + //顶部视频声音状态,重启恢复 + public static final String SP_TOP_VIDEO_VOICE = "top_video_voice"; //手机号码匹配规则 public static final String REGEX_MOBILE = "^((13[0-9])|(15[^4,\\D])|(18[0,5-9]))\\d{8}$"; diff --git a/app/src/main/java/com/gh/gamecenter/MainActivity.java b/app/src/main/java/com/gh/gamecenter/MainActivity.java index b487936f28..611e6124e2 100644 --- a/app/src/main/java/com/gh/gamecenter/MainActivity.java +++ b/app/src/main/java/com/gh/gamecenter/MainActivity.java @@ -416,6 +416,9 @@ public class MainActivity extends BaseActivity { e.printStackTrace(); } }); + + //恢复顶部视频默认静音状态 + SPUtils.setBoolean(Constants.SP_TOP_VIDEO_VOICE, true); } @Override diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/GameDetailFragment.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/GameDetailFragment.kt index bc49bccb3d..aa7b0e6ce8 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/GameDetailFragment.kt +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/GameDetailFragment.kt @@ -662,7 +662,7 @@ class GameDetailFragment : NormalFragment() { .setVideoAllCallBack(object : GSYSampleCallBack() { override fun onPrepared(url: String?, vararg objects: Any?) { super.onPrepared(url, *objects) - GSYVideoManager.instance().isNeedMute = true + //GSYVideoManager.instance().isNeedMute = true } override fun onQuitFullscreen(url: String?, vararg objects: Any) { diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/video/TopVideoView.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/video/TopVideoView.kt index 348208a66a..d71b51c7df 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/video/TopVideoView.kt +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/video/TopVideoView.kt @@ -11,9 +11,11 @@ import android.widget.ImageView import androidx.core.content.ContextCompat import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentManager +import com.gh.common.constant.Constants import com.gh.common.observer.MuteCallback import com.gh.common.observer.VolumeObserver import com.gh.common.util.MtaHelper +import com.gh.common.util.SPUtils import com.gh.common.util.StringUtils import com.gh.download.DownloadManager import com.gh.gamecenter.R @@ -57,12 +59,19 @@ class TopVideoView @JvmOverloads constructor(context: Context, attrs: AttributeS showBackBtn() } else { hideBackBtn() - if (!isInPlayingState) { - mute() - } +// if (!isInPlayingState) { +// mute() +// } } volume.setOnClickListener { toggleMute() } + + val topVideoVoiceStatus = SPUtils.getBoolean(Constants.SP_TOP_VIDEO_VOICE, true) + if (topVideoVoiceStatus) { + mute() + } else { + unMute() + } } mMuteCallback = object : MuteCallback { @@ -137,6 +146,8 @@ class TopVideoView @JvmOverloads constructor(context: Context, attrs: AttributeS } fun updateMuteStatus() { + val topVideoVoiceStatus = SPUtils.getBoolean(Constants.SP_TOP_VIDEO_VOICE, true) + viewModel?.videoIsMuted = topVideoVoiceStatus if (viewModel?.videoIsMuted == true) { mute() } else { @@ -148,7 +159,7 @@ class TopVideoView @JvmOverloads constructor(context: Context, attrs: AttributeS viewModel?.videoIsMuted = true volume.setImageResource(R.drawable.ic_game_detail_volume_off) GSYVideoManager.instance().isNeedMute = true - + SPUtils.setBoolean(Constants.SP_TOP_VIDEO_VOICE, true) if (isManual) { Utils.toast(context, "当前处于静音状态") MtaHelper.onEvent("游戏详情_顶部视频", "${getMtaKeyPrefix()}-点击静音", combinedTitleAndId) @@ -159,7 +170,7 @@ class TopVideoView @JvmOverloads constructor(context: Context, attrs: AttributeS viewModel?.videoIsMuted = false volume.setImageResource(R.drawable.ic_game_detail_volume_on) GSYVideoManager.instance().isNeedMute = false - + SPUtils.setBoolean(Constants.SP_TOP_VIDEO_VOICE, false) if (isManual) MtaHelper.onEvent("游戏详情_顶部视频", "${getMtaKeyPrefix()}-解除静音", combinedTitleAndId) } @@ -190,7 +201,6 @@ class TopVideoView @JvmOverloads constructor(context: Context, attrs: AttributeS // 不需要弹弹窗,直接播放 override fun showWifiDialog() { - unMute() startPlayLogic(false) // 不延迟的话 isCacheFile 可能直接返回 false postDelayed({ diff --git a/app/src/main/java/com/gh/gamecenter/video/detail/DetailPlayerView.kt b/app/src/main/java/com/gh/gamecenter/video/detail/DetailPlayerView.kt index f5f1ed8a99..b293738a2c 100644 --- a/app/src/main/java/com/gh/gamecenter/video/detail/DetailPlayerView.kt +++ b/app/src/main/java/com/gh/gamecenter/video/detail/DetailPlayerView.kt @@ -141,8 +141,8 @@ class DetailPlayerView @JvmOverloads constructor(context: Context, attrs: Attrib } else { likeIv.setImageDrawable(ContextCompat.getDrawable(context, R.drawable.ic_video_detail_like)) } - if (!likeIv.hasOnClickListeners()) - RxView.clicks(likeIv) + if (!likeContainer.hasOnClickListeners()) + RxView.clicks(likeContainer) .throttleFirst(1, TimeUnit.SECONDS) .subscribe { like() @@ -188,7 +188,6 @@ class DetailPlayerView @JvmOverloads constructor(context: Context, attrs: Attrib when (videoEntity.status) { "pass" -> { if (mViewModel != null) { -// VideoDetailContainerFragment.pauseVideo[mViewModel!!.uuid] = false mViewModel?.isPauseVideo = false } val intent = CommentActivity.getVideoCommentIntent(context, videoEntity.id, videoEntity.commentCount, "", false)