[8.2.4][B2乘客]优化广告播放器使用的单例Key

This commit is contained in:
xinfengkun
2025-09-08 15:16:13 +08:00
parent bac46eddb8
commit adab87fe92
3 changed files with 14 additions and 49 deletions

View File

@@ -55,19 +55,13 @@ object AudioFocusManager : MusicDataChangeListener {
}
}
if (isPlayingVideo) {
CustomManager.getCustomManagersByTag(AdVideoPlayer.TAG).forEach{
it.setNeedMute(true)
}
// GSYVideoManager.instance().curPlayerManager?.setNeedMute(true)
CustomManager.getNullableCustomManager(AdVideoPlayer.TAG)?.setNeedMute(true)
}
}else{
if(isPlayingMusic){
AuditionManager.setVolume(1f,1f)
}
CustomManager.getCustomManagersByTag(AdVideoPlayer.TAG).forEach{
it.setNeedMute(false)
}
// GSYVideoManager.instance().curPlayerManager?.setNeedMute(false)
CustomManager.getNullableCustomManager(AdVideoPlayer.TAG)?.setNeedMute(false)
}
}
CallerLogger.d(TAG, "setTTSFocusChange $isPlayingTTS--$isPlayingMusic---$isPlayingVideo")
@@ -84,17 +78,11 @@ object AudioFocusManager : MusicDataChangeListener {
AuditionManager.stop()
}
if (isPlayingTTS) {
CustomManager.getCustomManagersByTag(AdVideoPlayer.TAG).forEach{
it.setNeedMute(true)
}
// GSYVideoManager.instance().curPlayerManager?.setNeedMute(true)
CustomManager.getNullableCustomManager(AdVideoPlayer.TAG)?.setNeedMute(true)
}
} else {
if (!isPlayingTTS) {
CustomManager.getCustomManagersByTag(AdVideoPlayer.TAG).forEach{
it.setNeedMute(false)
}
// GSYVideoManager.instance().curPlayerManager?.setNeedMute(false)
CustomManager.getNullableCustomManager(AdVideoPlayer.TAG)?.setNeedMute(false)
}
}
}

View File

@@ -48,25 +48,14 @@ class AdVideoPlayer : StandardGSYVideoPlayer {
}
}
override fun getGSYVideoManager(): GSYVideoViewBridge1 {
CustomManager.getCustomManager(key).initContext(context.applicationContext)
return CustomManager.getCustomManager(key)
}
override fun backFromFull(context: Context): Boolean {
return CustomManager.backFromWindowFull(context, key)
CustomManager.getCustomManager(TAG).initContext(context.applicationContext)
return CustomManager.getCustomManager(TAG)
}
override fun releaseVideos() {
CustomManager.releaseAllVideos(key)
CustomManager.releaseAllVideos(TAG)
}
override fun getFullId(): Int {
return CustomManager.FULLSCREEN_ID
}
override fun getSmallId(): Int {
return CustomManager.SMALL_ID
}
override fun hideAllWidget() {
Logger.d(MediaLoopPlayView.TAG, "AdvanceGSYVideoPlayerhideAllWidget")
}
@@ -184,14 +173,4 @@ class AdVideoPlayer : StandardGSYVideoPlayer {
}
}
private val key: String
get() {
if (mPlayPosition == -22) {
Debuger.printfError(javaClass.simpleName + " used getKey() " + "******* PlayPosition never set. ********")
}
if (TextUtils.isEmpty(mPlayTag)) {
Debuger.printfError(javaClass.simpleName + " used getKey() " + "******* PlayTag never set. ********")
}
return TAG + mPlayPosition + mPlayTag
}
}

View File

@@ -120,17 +120,15 @@ class CustomManager : GSYVideoBaseManager() {
}
return customManager
}
/**
* 获取所有指定tag对应的CustomManager
*/
@Synchronized
fun getCustomManagersByTag(tag: String): List<CustomManager> {
if (tag.isBlank()) {
return emptyList()
fun getNullableCustomManager(key: String?): CustomManager? {
if (TextUtils.isEmpty(key)) {
return null
}
return sMap.filterKeys { key ->
key.startsWith(tag)
}.values.toList()
val customManager: CustomManager? = sMap[key]
return customManager
}
fun onPauseAll() {