ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

手把手:给你的游戏接上 PerfDog

手把手:给你的游戏接上 PerfDog

先说一个好消息:PerfDog 不需要"接入"到游戏里。

它不需要你在游戏里集成 SDK、改代码或重新打包。无论是应用商店下载的游戏、自己用 Unity 打出来的包,还是电脑上运行的游戏,做法都一样:在电脑上装好 PerfDog 客户端,把设备连上,在列表里选中游戏,点开始。

你的电脑(装 PerfDog 客户端) │ ├── USB / WiFi ──▶ 安卓手机上的游戏 ├── USB / WiFi ──▶ iPhone / iPad 上的游戏 └── 本机 ────────▶ Windows 上运行的游戏(例如 Unity 打包的 .exe)

下面按"安卓手机、iPhone、电脑上的 Unity 游戏"三种情况分别说明。

说明:PerfDog 的界面、版本要求、授权方式和支持的平台会随版本更新。下面是通用流程,菜单名称以你安装的版本和官网文档为准。


一、通用准备:先把"监护仪"装好

步骤说明
1. 下载客户端从 PerfDog 官网(perfdog.qq.com)下载 Windows 或 macOS 客户端
2. 登录账号首次打开需要注册或登录。免费版与付费版在测试时长、功能上可能有差别,以官网说明为准
3. 准备数据线用质量可靠、支持数据传输的线。有些线只能充电,这是"设备不显示"最常见的原因之一
4. 关掉"抢设备"的软件各类手机助手、模拟器、其他自带 adb 的工具,可能会占用安卓的调试连接,测试时先退出

二、安卓手机上的游戏

1. 打开手机的 USB 调试

设置 → 关于手机 → 连续点击"版本号"7 次 → 提示"已进入开发者模式" 设置 → 系统(或"更多设置")→ 开发者选项 → 打开"USB 调试"

不同品牌的额外开关:

品牌可能需要额外打开的选项
小米 / 红米“USB 安装”、“USB 调试(安全设置)”(部分需要登录小米账号并插卡)
OPPO / 一加 / realme"禁止权限监控"等相关选项(视系统版本)
vivo / iQOO"USB 安装"相关确认
华为 / 荣耀“仅充电模式下允许 ADB 调试”

2. 连接电脑

  1. 用数据线连接手机和电脑;
  2. 手机上弹出"允许 USB 调试吗?",勾选"始终允许"并确认;
  3. 打开 PerfDog 客户端,设备列表里会出现你的手机。

3. 选择连接方式

点击设备时,PerfDog 通常会提供几种模式:

模式说明适合
安装模式在手机上安装一个 PerfDog 辅助应用,可以在游戏画面上显示悬浮窗,实时看到帧率等数据大多数情况,推荐
非安装模式(ADB 模式)不在手机上装任何东西,没有悬浮窗不允许安装第三方应用的设备
WiFi 模式先用 USB 连上,再切换到无线;之后可以拔掉数据线测功耗和发热(避免 USB 一边测一边充电)

如果选择安装模式,手机上会弹出安装确认,点"允许"或"继续安装"。悬浮窗需要授予"显示在其他应用上层"的权限。

4. 选择游戏并开始

PerfDog 客户端 → 选择设备 → 选择应用(下拉列表里找到你的游戏) → 勾选要采集的指标(FPS、CPU、GPU、内存、温度、功耗……) → 点击"开始" → 去手机上玩游戏

几点提醒:

  • 商店下载的游戏也能测,不需要是你自己开发的,也不需要是调试版;
  • 一些游戏有多个进程(例如主进程、推送进程),一般选择游戏主进程;如果 FPS 一直为 0,换一个进程试试;
  • 测试过程中保持游戏在前台运行。

三、iPhone / iPad 上的游戏

1. 准备电脑环境

电脑需要
macOS一般无需额外安装
Windows安装iTunes(或"Apple 设备"应用),以获得苹果的设备驱动,否则电脑识别不到 iPhone

2. 连接与信任

  1. 用数据线连接 iPhone 与电脑;
  2. iPhone 上弹出"要信任此电脑吗?“,点"信任”,输入锁屏密码;
  3. 打开 PerfDog,设备列表中会出现你的 iPhone。

**不需要越狱。**PerfDog 使用的是苹果提供给开发工具的设备性能服务。

3. 可能遇到的提示

情况处理
提示需要开启"开发者模式"iPhone 上:设置 → 隐私与安全性 → 开发者模式 → 打开,按提示重启并确认
较新的 iOS 版本连不上新系统改动过设备调试服务,先把 PerfDog 升级到最新版本
首次连接较慢客户端可能在准备与设备通信的组件,耐心等待,保持手机解锁

4. 选择游戏并开始

和安卓相同:选设备 → 选应用 → 勾选指标 → 开始。

  • App Store 下载的游戏、TestFlight 的测试版、自己用 Xcode 装的开发包,都可以测;
  • iOS 上没有安卓那样的悬浮窗,数据在电脑客户端上实时查看;
  • 同样支持在 USB 配对后切换为 WiFi 模式,适合测功耗。

四、电脑上的 Unity 游戏

这里分两种情况,先想清楚你要测的到底是哪一个。

情况 A:你想知道游戏在手机上的表现

这是 Unity 手游最常见的需求。电脑上跑得再流畅,也不能代表手机上的表现,所以正确做法是:

Unity → File → Build Settings → 切换到 Android 或 iOS → 打出 APK(安卓)或导出 Xcode 工程并安装到 iPhone(iOS) → 安装到手机 → 按第二、三节的方法用 PerfDog 测试

情况 B:你的游戏就是 PC 游戏,想测它在电脑上的表现

PerfDog 的 Windows 客户端支持测试 Windows 应用(以你所用版本的支持情况为准):

  1. 先用 Unity 打出Windows 独立版本(File → Build Settings → Windows,得到一个.exe);
  2. 运行这个游戏;
  3. 打开 PerfDog,在设备列表中选择本机(Windows / PC);
  4. 在应用或进程列表中找到你的游戏进程(通常与.exe同名),选中并开始;
  5. 如果列表里找不到或数据采集不到,尝试以管理员身份运行 PerfDog。

不要直接测 Unity 编辑器

在 Unity 编辑器里点 Play 运行游戏,然后用 PerfDog 测Unity.exe,这个数据几乎没有参考价值:

原因说明
编辑器本身很重Scene 视图、Inspector、各种窗口都在消耗 CPU 与 GPU
代码运行方式不同编辑器里运行的脚本与打包后(尤其是 IL2CPP)的性能不同
资源加载方式不同编辑器从工程目录直接加载资源,打包后走的是打包后的资源

结论:性能测试一定要测打包后的版本。


五、Unity 项目在测试前要检查的几件事

如果测的是你自己的 Unity 项目,下面这些设置会直接影响数据:

设置影响建议
帧率上限移动平台默认可能限制在 30 帧,测出来"永远 30 帧"并不代表性能不行检查Application.targetFrameRate与游戏内帧率选项
垂直同步会把帧率锁在屏幕刷新率或其约数上测试时明确开关状态,前后保持一致
Development Build开发构建有额外开销,数据会偏差衡量最终性能用正式(Release)构建;需要连 Unity Profiler 深挖时再用开发构建
画质档位不同档位差别巨大每次测试记录并固定档位
脚本后端Mono 与 IL2CPP 性能不同与正式发布使用的后端保持一致

一个简单的帧率设置脚本示例:

usingUnityEngine;publicclassPerfTestSettings:MonoBehaviour{[SerializeField]inttargetFps=60;voidAwake(){QualitySettings.vSyncCount=0;// 关闭垂直同步,由 targetFrameRate 控制帧率Application.targetFrameRate=targetFps;// 移动平台上默认帧率可能较低,测试前明确设置Debug.Log($"[PerfTest] targetFrameRate={targetFps}, quality={QualitySettings.names[QualitySettings.GetQualityLevel()]}");}}

六、测试过程中:让数据会说话

连上之后,真正的技巧在于"怎么测":

操作怎么做为什么
打标签在客户端里,进入不同场景时添加标签:大厅、加载、对局、团战、结算结束后能按场景分别看数据
写批注卡顿时在时间轴上记一句:“此处放大招”方便回看时对应画面
截图出现明显卡顿时截图记录现场
测足够久至少一局完整对局,关注发热时测 30 分钟以上短时间测不出发热降频
保存上传结束后保存并上传到 PerfDog 的 Web 平台便于和旧版本、其他机型对比

保持测试条件一致:电量相近、关闭后台应用、亮度固定、画质固定、环境温度接近。条件一致,数据才能对比。


七、常见问题速查

问题可能原因解决办法
安卓手机连上了,但 PerfDog 里没有设备数据线只能充电;USB 调试未开启;未点"允许调试"换线、重新开启 USB 调试、重新插拔并确认弹窗
安卓设备时有时无手机助手、模拟器等软件占用了调试连接退出这些软件,重启 PerfDog
安装辅助应用失败手机禁止 USB 安装打开"USB 安装"等选项,或改用非安装模式
Windows 上识别不到 iPhone缺少苹果设备驱动安装 iTunes(或"Apple 设备"应用),重新插拔
iPhone 连接失败未信任电脑、未开开发者模式、PerfDog 版本过旧信任电脑、按提示开启开发者模式、升级 PerfDog
应用列表里找不到游戏列表未刷新;游戏未安装在当前设备刷新列表,确认安装位置
FPS 一直是 0选错进程;游戏不在前台选择游戏主进程,保持游戏在前台
帧率一直是 30游戏帧率上限为 30,或开启了省电模式检查游戏帧率设置与手机省电、性能模式
功耗数据异常USB 连接时在充电改用 WiFi 模式测功耗
电脑上的游戏采集不到数据权限不足;选错进程以管理员身份运行 PerfDog,确认进程

八、进阶:测完之后做什么

当你已经能顺利测试,可以继续了解这些能力(具体以官方文档为准):

方向说明
Web 平台对比把新旧版本、不同机型的数据叠在一起比较
自定义数据扩展官方提供让游戏向 PerfDog 发送自定义数据的方式,例如把场景名、DrawCall 数显示在曲线上;这一步需要在游戏中做少量对接
自动化测试通过 PerfDogService 等服务化接口,配合自动化脚本在每日构建后自动跑性能回归
深入分析PerfDog 告诉你"哪里卡、什么时候卡";要找原因,再配合 Unity Profiler、Xcode Instruments、Android Studio Profiler、RenderDoc 等工具

一句话总结

不用改游戏,装好客户端、连上设备、选中游戏、点开始。
手机游戏:安卓开 USB 调试,iPhone 信任电脑(Windows 上要装 iTunes)。
Unity 游戏:要测手机表现就打包装到手机上;要测 PC 表现就打出.exe再测本机;不要测 Unity 编辑器。

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进