如果手机能root的话更好,推荐刷lineageos开源系统,这样可以直接renderdoc截取真机游戏,不需要做任何操作。lineageos系统的底层权限比较开放,比较适合renderdoc抓帧。
https://wiki.lineageos.org/devices/
如果手机不能root的话,我们需要把android:debuggable=”true” 塞到竞品的Application标签中,我首先就想到了apktool重新打包工具。如下图我做了个绿色工具,使用者不需要安装java环境和JDK也可以解包在打包。
34.0.0 :直接在android sdk目录下的build-tools中拷贝
jdk-22.0.1 :下载最新的JDK拷贝进来就行
a.apk:待解包的apk文件。
aaaa.keystore :新创建的一个证书,重新打包要用这个证书。
接着运行 解包.bat
1 2 3 4 5 |
cd /d %~d0 cd %~dp0 jdk-22.0.1\bin\java.exe -jar apktool_2.9.3.jar d a.apk --frame-path aframework |
接着在a/AndroidManifest.xml 中的application标签中添加android:debuggable=”true”
最后执行 打包.bat (证书的别名和密码填写你自己创建证书的)
1 2 3 4 5 6 7 8 9 10 11 |
cd /d %~d0 cd %~dp0 jdk-22.0.1\bin\java.exe -jar apktool_2.9.3.jar b a -o a1.apk --frame-path aframework 34.0.0\zipalign.exe -f -p 4 a1.apk a2.apk set JAVA_HOME=%~dp0\jdk-22.0.1 echo %JAVA_HOME% call 34.0.0\apksigner.bat sign --ks aaaa.keystore --ks-key-alias bump --ks-pass pass:123456 --out a3.apk a2.apk |
a3.apk就是我们修改debug并且重新签名的apk,此时安装到手机上就可以用renderdoc截帧看了
有些游戏并没有在国内上,只有googleplay的版本,也不要紧。 可以在APKPure中下载竞品的XAPK,右键保存成zip解压,按照以上的方法生成出所有的apk文件。_back是它的原文件,选中的是重新签名过的apk文件。
使用adb命令同时安装所有的apk文件。
1 2 3 |
adb install-multiple com.run.tower.defense.apk config.armeabi_v7a.apk game_asset.apk |
OK这样就可以在真机上分析它的渲染了。
- 本文固定链接: https://www.xuanyusong.com/archives/5196
- 转载请注明: 雨松MOMO 于 雨松MOMO程序研究院 发表
捐 赠写博客不易,如果您想请我喝一杯星巴克的话?就进来看吧!