diff --git a/app/src/main/java/me/iacn/biliroaming/MiscRemoveAdsDialog.kt b/app/src/main/java/me/iacn/biliroaming/MiscRemoveAdsDialog.kt index db46fdc551..d84ce55978 100644 --- a/app/src/main/java/me/iacn/biliroaming/MiscRemoveAdsDialog.kt +++ b/app/src/main/java/me/iacn/biliroaming/MiscRemoveAdsDialog.kt @@ -41,12 +41,18 @@ class MiscRemoveAdsDialog(val activity: Activity, prefs: SharedPreferences) : } removeCommentCmSwitch.isChecked = prefs.getBoolean("remove_comment_cm", false) + val blockDmFeedbackSwitch = string(R.string.block_dm_feedback_title).let { + switchPrefsItem(it).let { p -> root.addView(p.first); p.second } + } + blockDmFeedbackSwitch.isChecked = prefs.getBoolean("block_dm_feedback", false) + setTitle(string(R.string.misc_remove_ads_title)) setPositiveButton(android.R.string.ok) { _, _ -> prefs.edit().apply { putBoolean("remove_search_ads", removeSearchAdsSwitch.isChecked) putBoolean("remove_comment_cm", removeCommentCmSwitch.isChecked) + putBoolean("block_dm_feedback", blockDmFeedbackSwitch.isChecked) }.apply() Log.toast(string(R.string.prefs_save_success_and_reboot)) } diff --git a/app/src/main/java/me/iacn/biliroaming/hook/JsonHook.kt b/app/src/main/java/me/iacn/biliroaming/hook/JsonHook.kt index cd13c90d55..59f092fb31 100644 --- a/app/src/main/java/me/iacn/biliroaming/hook/JsonHook.kt +++ b/app/src/main/java/me/iacn/biliroaming/hook/JsonHook.kt @@ -65,6 +65,10 @@ class JsonHook(classLoader: ClassLoader) : BaseHook(classLoader) { val biliLiveRoomUserInfoClass = "com.bilibili.bililive.videoliveplayer.net.beans.gateway.userinfo.BiliLiveRoomUserInfo" .from(mClassLoader) + val dmQoeInfoClass = "tv.danmaku.bili.videopage.player.features.qoe.DmQoeInfo" + .from(mClassLoader) + val geminiDmQoeInfoClass = "tv.danmaku.bili.videopage.player.gemini.qoe.GeminiDmQoeInfo" + .from(mClassLoader) val liveRoomRecommendCardClass = "com.bilibili.bililive.videoliveplayer.net.beans.attentioncard.LiveRoomRecommendCard" .from(mClassLoader) @@ -327,6 +331,10 @@ class JsonHook(classLoader: ClassLoader) : BaseHook(classLoader) { } } + dmQoeInfoClass, geminiDmQoeInfoClass -> if (hidden && + sPrefs.getBoolean("block_dm_feedback", false) + ) result.callMethod("setShow", false) + dmAdvertClass -> if (sPrefs.getBoolean("hidden", false) && sPrefs.getBoolean("block_up_rcmd_ads", false) ) result.setObjectField("ads", null) diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 97d58a5ce4..f45fa5d1a6 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -194,6 +194,7 @@ 默認播放速度 僅應用到影片播放 例如:1.5,空表示預設 + 屏蔽播放結束時彈幕氛圍回饋 取代豎版影片 取代豎版影片為正常影片 自訂我的頁面 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 51b066467d..50c90902de 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -193,6 +193,7 @@ 默认播放速度 仅应用到视频播放 例如:1.5,空表示默认 + 屏蔽播放结束时弹幕氛围反馈 替换竖版视频 替换竖版视频为正常视频 自定义我的页面