高中生

- 金币
- 817
- 好评
- 5
- 信誉
- 101
|
本帖最后由 이지은 于 2026-6-18 14:26 编辑
안녕하세요!
去掉开屏冷启动以及热启动广告
直接到帖子结尾赋值成品配置即可!!
看到了友友分享的旧版本blbl的去开屏广告的配置
竟然不是最新版!
有点强迫症那必须搞一下8.99.0最新版
配置如下
- 已失效勿用!{"packageName":"tv.danmaku.bili","appName":"哔哩哔哩","versionName":"8.99.0","description":"哔哩哔哩","configs":"[{"className":"tv.danmaku.bili.MainActivityV2","methodName":"Y6","params":"tv.danmaku.bili.ui.splash.ad.model.Splash,boolean","resultValues":"false","hookPoint":"after"}]","id":1}
复制代码
然后思路是啥呢
类名- tv.danmaku.bili.MainActivityV2
复制代码 Y6的方法签名为
- .method public final Y6(Ltv/danmaku/bili/ui/splash/ad/model/Splash;Z)Z
复制代码
p1是Splash类型,开屏广告数据对象
p2是boolean类型,是否为冷启动返回值为boolean,是否成功展示开屏广告
我们直接返回false就表达拒绝展示广告

再具体的代码分析去问AI吧,哈哈哈
  二章节六月18日编
昨天配置测试了很多次都没有问题,今早起来友友反馈不能去除
我于是又看了代码
MainActivityV2.R6()
├── 696行: Me1.a.a() 判断是否走新架构
│ └── true → MainActivityStartPageComponentKt.a(this) [直接加载主页]
│
└── 1795行: if (splashShowing) 是否展示商业开屏
├── 1803行: ColdSplashWrapper.a() [旧冷启动开屏]
│
└── 1832行: MainActivitySplashComponentExtKt.a(this) 【最主要的方法名】
↓
返回 SplashOrder → MainActivitySplashComponentExtKt.c(this, order, true)
↓
创建 ADSplashFragment → commitAllowingStateLoss()
我的错误为以下几点:①Y6不是唯一广告入口,还有品牌广告,冷启动,活动广告等②after时机过晚,广告已经加载好了, Fragment 已提交③没有hook所有广告展示路径
去掉了开屏广告,但是热启动时的广告并没有去掉
我们还是 tv.danmaku.bili.MainActivityV2 类的R6方法名分析
R6()
│
├─ 696行: if (Me1.a.a()) → 新架构
│ ├── true → 702行: MainActivityStartPageComponentKt.a(this)
│ └── 直接加载主页,无广告
│
│
│
├─ 707行: if (!F && !r0) → 是否展示开屏广告
│ ├── r0 = true (冷启动) → 跳过
│ └── r0 = false (热启动) → 展示
│
├─ 745-1182行: EventSplash/BrandSplash 品牌开屏
│
│
├─ 1280行: v0 = v0 && !splashShowing → 商业开屏判断
│ └── v0 = true (需要展示)
│
├─ 1795行: if (v0 && !splashShowing) → true
│ │
│ ├─ 1803行: ColdSplashWrapper.a() → 旧冷启动包装
│ │
│ ├─ 1832行: ExtKt.a() → 获取 SplashOrder (新架构)
│ │ └── 1837行: ExtKt.c(this, order, true)
│ │ └── 我目前修改Hook返回false → 不展示广告
│ │
│ │
│ └─ 1842行: this.Y6(splash, true) ← 【热启动走这里】
│ └── 广告出现
│
└─ 热启动时 r0=false, 可直接跳到 1842行
故需要把Y6返回false,即可去掉热启动广告
以下是完善后的配置代码,已经测试没有问题
- {"packageName":"tv.danmaku.bili","appName":"哔哩哔哩","versionName":"8.99.0","description":"哔哩哔哩","configs":"[{"className":"tv.danmaku.bili.MainActivitySplashComponentExtKt","methodName":"c","params":"tv.danmaku.bili.MainActivityV2,tv.danmaku.bili.splash.ad.model.SplashOrder,boolean","resultValues":"false","hookPoint":"after"},{"className":"tv.danmaku.bili.MainActivityV2","methodName":"Y6","params":"tv.danmaku.bili.ui.splash.ad.model.Splash,boolean","resultValues":"false","hookPoint":"after"}]","id":1}
复制代码
|
|