123下一页
返回列表 发新帖

原教程的小补充水一贴吧

[复制链接]

140

主题

1954

回帖

7486

积分

硕士生

Rank: 6Rank: 6

金币
3833
好评
25
信誉
120
发表于 2025-11-24 13:46:37 来自手机  | 显示全部楼层 | 阅读模式  来自 中国
本帖最后由 tuandgame 于 2025-11-24 13:46 编辑

https://bbs.binmt.cc/forum.php?mod=viewthread&tid=159472
按照这个教程实践了。由于 play上面是新版1.0170。我不知道改了啥。启动的部分按照原教程感觉还是很慢。我数那个转一转的那个转了有20多次。下面补补个解法,实测确实快了些,就算是原教程的小补充---

一、效果实测

同一台机器、冷启动

视觉:白屏时间砍半,但未做到「一闪即过」,仍有 体感。

---

二、已落地

1. 开会员(砍广告链路)

文件:/smali/com/rocks/music/videoplayer/Splash.smali

方法:isPremiumUser()Z

替换 4 行:

```
.method public isPremiumUser()Z
    .registers 9
    const/4 v0, 0x1
    sput-boolean v0, Lcom/rocks/themelibrary/AppThemePrefrences;->e:Z
    return v0
.end method
```

作用:跳过 MobileAds.initialize()、UMP 同意框、FirebaseRemoteConfig.fetch() 等主线程大户,耗时 200-600 ms 被砍掉。

2. Splashativity(砍人为延迟)


方法:M3()V

替换 2 行:

```
.method private M3()V
    .registers 1
    invoke-direct {p0}, Lcom/rocks/music/videoplayer/Splash;->N3()V
    return-void
.end method
```

作用:去掉 Handler.postDelayed(300|2000 ms) 保底逻辑,直接发跳转消息,耗时 300-2000 ms 被砍掉。

---

三、理论补充:为什么只砍半

Android 启动链 =

进程创建 → Application → ContentProvider → onCreate → onResume → 第一帧

我们改的两步仅作用于「onCreate 内部 Java 代码」,约占整条链 30-40%;

真正大头在后面:
- MultiDex install(dex 分析 + IO)
- 第三方 ContentProvider 批量初始化
- FirebaseRemoteConfig 首次 fetch(网络)
- UMP GDPR 弹窗(联网 + WebView)
- Room 首次建表(磁盘 IO)
- 主题背景大图解码(GPU 上传)

---

四、继续深挖路线图(欢迎接力)

1. Application 阶段  
   - 用 `adb shell am start -W` 对比 TotalTime vs ThisTime,差值 > 300 ms 即 Provider 在拖  
   - 把非必要 `<provider>` 直接注释(常见于 Firebase、Facebook、友盟)  
   - 启用 baseline profile(Android 13+ 自动生效)让热点 dex 提前 AOT

2. 主题窗口

   给 Splash Activity 套透明主题:
   
```xml
   <style name="Launcher">
       <item name="android:windowBackground">@null</item>
       <item name="android:windowIsTranslucent">true</item>
   </style>
   ```

   视觉白屏消失,但窗口绘制起点仍在,需继续下一条。

3. 网络与弹窗后移  
   - UMP consent form 延迟到首页 onResume() 再 show()  
   - FirebaseRemoteConfig.fetch() 放后台协程,首页只 activate()

   启动页只读 SP 布尔(磁盘一次,< 5 ms)

4. Room / SharedPreference 重型迁移

   首次 Room.build() 常 100-300 ms,在 Application 子线程先 build 一次;启动页只拿内存引用

   SP 存放大 JSON → 分区文件,启动页只读关键键

5. so 与广告 SDK 尾巴

   `strace -e dlopen` 看哪个 so 在主线程加载 → 延迟到子线程

   Google Mobile Ads 22.0.0+ 提供 `initializeOnBackgroundThread()`,启动页完全不调用

---


五、一句话总结

「会员秒跳 + M3 清零」是低成本第一刀,已砍 50%;

真正想冲进 300 ms 以内,必须把 Application 阶段网络/IO/Provider 全部后移,欢迎把挖掘结果发回来,一起把白屏打到透明!

——丞相旗下降速分部 敬上
回复

使用道具 举报

8

主题

1151

回帖

4249

积分

大学生

Rank: 5Rank: 5

金币
1102
好评
8
信誉
117
发表于 2025-11-24 13:49:26 来自手机  | 显示全部楼层  来自 浙江
感谢分享
回复

使用道具 举报

15

主题

1975

回帖

6208

积分

硕士生

Rank: 6Rank: 6

金币
2194
好评
10
信誉
104
发表于 2025-11-24 13:51:03 来自手机  | 显示全部楼层  来自 中国
感谢分享
回复

使用道具 举报

36

主题

1871

回帖

6537

积分

硕士生

LINGYUE

Rank: 6Rank: 6

金币
3195
好评
45
信誉
105

考神MT论坛最佳新人MT论坛帅哥MT论坛新人

QQ
发表于 2025-11-24 14:07:12 来自手机  | 显示全部楼层  来自 江西
看看大佬
回复

使用道具 举报

123

主题

3513

回帖

1万

积分

博士生

●一只菜鸡●

Rank: 7Rank: 7Rank: 7

金币
3512
好评
85
信誉
122

考神MT论坛新人MT论坛最佳新人MT论坛帅哥MT论坛活跃会员

发表于 2025-11-24 14:10:51 来自手机  | 显示全部楼层  来自 辽宁
看看隐藏,论坛有你更精彩!
回复

使用道具 举报

24

主题

4586

回帖

1万

积分

博士生

Rank: 7Rank: 7Rank: 7

金币
4377
好评
7
信誉
91
发表于 2025-11-24 14:20:55 来自手机  | 显示全部楼层  来自 湖南
看看隐藏
回复

使用道具 举报

1

主题

860

回帖

1906

积分

高中生

Rank: 4

金币
12
好评
0
信誉
98
发表于 2025-11-24 14:21:08 来自手机  | 显示全部楼层  来自 湖南
看看隐藏
回复

使用道具 举报

2

主题

4507

回帖

1万

积分

禁止访问

iKUN

金币
1214
好评
16
信誉
111
发表于 2025-11-24 14:21:20 来自手机  | 显示全部楼层  来自 广西
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

22

主题

1万

回帖

2万

积分

博士后

坤锁

Rank: 8Rank: 8

金币
11151
好评
1
信誉
100
发表于 2025-11-24 14:31:36 来自手机  | 显示全部楼层  来自 辽宁
看看隐藏
回复

使用道具 举报

4

主题

482

回帖

1605

积分

高中生

Rank: 4

金币
112
好评
0
信誉
100
发表于 2025-11-24 14:35:06 来自手机  | 显示全部楼层  来自 湖北
看看
回复

使用道具 举报

3

主题

4117

回帖

1万

积分

博士生

Rank: 7Rank: 7Rank: 7

金币
6051
好评
12
信誉
102

考神

发表于 2025-11-24 14:35:54 来自手机  | 显示全部楼层  来自 安徽
看看隐藏
回复

使用道具 举报

5

主题

1778

回帖

3796

积分

大学生

Rank: 5Rank: 5

金币
159
好评
0
信誉
100
QQ
发表于 2025-11-24 14:37:17 来自手机  | 显示全部楼层  来自 河南
看看隐藏
回复

使用道具 举报

16

主题

2720

回帖

7099

积分

硕士生

Rank: 6Rank: 6

金币
4374
好评
3
信誉
102

考神MT论坛新人MT论坛帅哥

发表于 2025-11-24 14:43:01 | 显示全部楼层  来自 广东
学习一下来了
回复

使用道具 举报

20

主题

1169

回帖

5286

积分

硕士生

Rank: 6Rank: 6

金币
1735
好评
6
信誉
60

考神MT论坛帅哥

发表于 2025-11-24 15:11:45 来自手机  | 显示全部楼层  来自 江苏
感谢分享
回复

使用道具 举报

10

主题

7203

回帖

1万

积分

博士生

Rank: 7Rank: 7Rank: 7

金币
5145
好评
1
信誉
91

MT论坛最佳新人考神

发表于 2025-11-24 15:15:04 来自手机  | 显示全部楼层  来自 湖北
看看隐藏
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表