一,安装 Windows .exe 文件
安装完成后,进入安装目录可以看到如下内容。主要注意一个用户指南和一个非常重要的 target 文件夹。
二,配置目标机器
如图所示,安装目录下的 target 文件夹的目录结构大致如下。
(默认 windows 上已经安装配置好 adb)
启动命令提示行终端。连上目标机器。
adb devices
确保机器已正常连接,且只连接了一台。
adb remount
获取向目标机器 /system 文件夹中写入的权限
cd target/android/arm
adb push mgddaemon /system/bin/mgddaemon
cd rooted
adb push armeabi-v7a/libGLES_mgd.so /system/lib/egl/libGLES_mgd.so
adb push arm64-v8a/libGLES_mgd.so /system/lib64/egl/libGLES_mgd.so
adb shell
su
cd /system/lib/egl
chmod 777 libGLES_mgd.so
ln -s libGLES_mgd.so libGLES.so
ln -s libGLES_mgd.so libEGL_mgd.so
ln -s libGLES_mgd.so libGLESv1_CM_mgd.so
ln -s libGLES_mgd.so libGLESv2_mgd.so
cd ../../lib64/egl
chmod 777 libGLES_mgd.so
ln -s libGLES_mgd.so libGLES.so
如果需要用到 Vulkan。则继续把刚刚的libGLES_mgd.so
push 到其他地方。
push armeabi-v7a/libGLES_mgd.so /system/fake-libs/libVkLayerMGD.so
push arm64-v8a/libGLES_mgd.so /system/fake-libs64/libVkLayerMGD.so
然后 cd 到机器的相应文件夹内,
chmod 777 libVkLayerMGD.so
三、选择单一应用App 追踪 (Trace)
在windows创建txt,写入 App 包名。关闭保存。重命名为 processlist.cfg。push进去,拷贝到 /system/lib/egl 下,并且 chmod 666。
其实这一步可以跳过。而且,如果莫名其妙抓不出数据的话,建议 rm 掉该文件再试一下。
四、连接,运行
连接好机器,启动命令行终端
adb forward tcp:5002 tcp:5002
adb shell
mgddaemon
然后在 windows 上启动 MGD 客户端。点连接Open Device Manager按钮。
确保 MGD Android App,Root Interceptor,Root Vulkan Layer 已经 Installed。如果没有,点后面的扳手安装。
然后点ID前面的链接按钮即可。
在机器上运行 App,就能抓到数据了。
还可以选择性抓取数据
完。
欢迎关注我的个人公众号 VR_Tech。
刚刚起步。