微信|微信“简洁版”来了,开启后有点刺激啊( 二 )


于是就有了小雷正在讨论的Hardcoder框架 。

大家可以看下图 , 传统的系统调度方案是先由App发出获取性能的需求 。
这个需求被安卓系统框架接收后 , 就会给予这个App合适的性能调度 。
但有了Hardcoder框架后 , 微信就不用再看系统调度的脸色了 , 它为所欲为 , 可以随意调用系统性能资源 。
比如从主界面进入聊天界面时 , 拉高CPU频率 , 甚至把微信某些线程挪到CPU超大核里面运行 ,
一切都为了让微信用起来更加流畅 。

既然能做到绕过系统调度 , Hardcoder肯定也需要手机厂商配合的 。
喏 , 就是把服务端放进国内的系统定制UI(MIUI、Flyme等) 。
再把客户端放进微信里 , 这样微信就可以绕过系统那套调度 。
用“私人搭建”的Hardcoder框架来调用CPU和GPU的性能资源 。

说人话就是微信跟国内某些定制ROM搞了合作 , 让系统给微信开了调度白名单 。
目前Hadrcoder框架已经接入了OPPO、vivo、华为、小米、三星和魅族等主流手机厂商 。
不得不说 , 鹅厂的影响力还是不容小觑 。

那么问题来了 , Hardcoder对我们 , 到底是好还是坏呢?
以开源文档来看 , 肯定是好处多多了 , 既能提高微信各种场景的流畅度 , 又不会导致功耗大幅提升 。
官方甚至表示 , 相当于只用2%的功耗换取平均20%的性能提升 , 效率高得离谱 。

但说实话 , 大家平时也是24小时挂着微信的用户了 。
微信流畅是流畅 , 但到底省不省电 , 相信各位心里都有数的 , 只能说中规中矩 。
即使Hardcoder已经专门对不同的机型做调度适配 , 但总会有适配得不够到位的地方 。
比如小雷明明用的是旗舰手机 , 几个中核就可以带起来微信 , Hardcoder硬是要把微信放在大核上运行 , 徒增功耗 。

Hardcoder虽然可以让微信的流畅度得到保证 , 但毫无疑问是提升牺牲发热和功耗 。
另一方面 , Hardcoder框架只能实现微信与系统之间的沟通 。

它不知道整个手机目前处于啥状态 , 在某些场景下会导致手机耗电更加严重 。
比如手机电量不足时 , 基本上都会自动开启省电模式 , 此时手机CPU会以低功耗模式运行 。

但由于微信不知道整个系统的情况 , 它只会不断给系统提要求:


“我要打开朋友圈了 , 给我提频!”
“我要发送文件给好友了 , 再提一下CPU频率!”
带来的问题就是省电模式一点都不省电 , 用户甚至会以为是系统出了问题 。
好比小雷的手机CPU还在躺着睡觉 , 突然被Hardcoder半夜敲门 , 你说CPU气不气 , 累不累?
像骁龙888这种发热严重点的 , 一生气就得飙到四五十度 , 这谁顶得住啊 。

手动调教Hardcoder , 还你流畅省电的微信既然发现了问题 , 我们就得着手去解决 。
Hardcoder为每台配置了服务端的机子都进行了统一适配 , 但默认的配置并不一定适合自己的手机 。
如果大家想让微信变得更省电流畅 , 不妨跟着小雷一起调教Hardcoder 。
支持的机型列表就放在这儿了 , 基本覆盖了主流厂商 , 大伙自己看着来 。  


首先 , 我们需要一个App -- 创建快捷方式 。
毕竟Hardcoder是底层框架 , 无法直接打开 , 我们得靠这个App来创建快捷方式使用 。

在创建快捷方式App里找到微信 , 进入微信的【活动列表】搜索“hard” , 就能看到Hardcoder框架的快捷方式 。
此时我们点击右上角的【创建】按钮 , Hardcoder的快捷方式会在系统桌面上出现 。

注意喽 , 如果点击【创建】后没发现桌面有动静 , 很有可能是没有给【创建快捷方式】权限 。