2.打开王者农药验证
接着就到我们的王者荣耀了,把画质调到最高,高帧率模式打开:
先不改机型,用魅蓝色试试
这是真的感人,最高帧50,经常掉到30帧左右,特别打团的时候,最低跌到27帧, 还提示画质降低,我也是服...接着改成Oppo r11 plus试试?
实测,场景不怎么复杂的时候60帧,平时基本处于50帧以上,打团的时候 也稳定在40帧以上,没有出现过画质降低的提示~
So,改改机型就可以爽翻天,里面的PY交易,你我都心知肚明
3.有个问题
一般呢,普通的APP到上面就完了,如果开发者皮一下,不是直接调Build.MODEL这种获取方法,而是通过反射呢?比如这样的代码:
这个时候拿到的还是原来的机型:
我们的设置就不会生效了,于是乎我们还需要Hook掉这个getString方法
此时拿到的就是修改后的机型了
当然我是不会满足的,在源码里看到:
我对继续点进去,看下**get()**方法
再跟下去:
这里的native关键字说明其修饰的方法是一个原生态方法,方法对应的实现不是在 当前文件,而是在用其他语言(如C和C++)实现的文件中。如果是改的话需要通过 JNI了,显然我们到了这里就够了,直接hook这个**native_get()**方法,然后返回品牌 或者机型。
再修改下xposed里的代码:
运行重启:
可以很稳,Hook到这里就差不多了,接着加上包名判断,如果打开的 是王者荣耀才去改机型,这里加上酷安的包名,后续真的拿来玩农药 的话再自行去掉吧。
分别打开酷安和设置里的关于手机:
OK,没毛病。
4.小结
代码非常简单,20行左右的代码就可以畅玩王者农药了,在此过程中有遇到 两个问题,要说明下:
- 1.低版本,hook方法不一定生效,所以还是需要静态设置那部分的代码
- 2.有时重启后代码并没有生效,xposed Installer那里建议关下插件再开,然后再重启
我只是研究技术细节怎么实现的,并不会去完善这个项目,有兴趣的自行扩展, 比如加上应用和机型选择等,在撸这一篇的时候大部分参考的是这个开源项目:
github.com/kingsollyu/…他有个更完善的开源项目(应用变量Xposed插件):github.com/kingsollyu/…感谢开源作者的开源精神~
附:最终代码(都可以在:github.com/coder-pig/C… 找到):