通常,当我创建一些东西时,我会对如何去做有很多不同的想法。每当我不确定哪个更好时,我宁愿自己测试一下,而不是每次都在这里发帖。我可以使用哪些方法来测试 Android 中的速度/性能/内存使用情况等?
最佳答案
虽然我个人对它们没什么经验,Performance Tips Android 文档提供了两个可能有用的用于检查基准的程序。
粗略一看,好像Traceview对于测试单个方法以及广泛的应用程序范围非常有用。
根据文档,创建跟踪、检索跟踪并对其进行处理可以按如下方式完成:
首先,找到您想要测试性能的位置。这是一个快速示例:
public void doSomething() {
//maybe a long process that needs optimizing
}
protected void onCreate(Bundle savedInstanceState) {
// set up stuff
Debug.startMethodTracing("myfilename");
doSomething();
Debug.stopMethodTracing();
}
其次,从您的 Android 设备检索该文件(请注意,您需要写入权限才能创建此文件,因此请务必将其添加到您的 list 中)。这可以使用 Android 调试桥(位于 <Android SDK Home>/platform-tools
)来完成。打开命令 shell 并运行以下命令
<Android SDK home>/platform-tools/adb pull /sdcard/myfilename.trace <Desired Location>
最后,您可以使用 Traceview
处理输出与另一个命令调用。 Traceview
位于<Android SDK Home>/tools
目录,因此调用如下所示:
<Android SDK Home>/tools/traceview <Desired Location>/myfilename
请注意,根据您的操作系统,您可能需要切换正斜杠和反斜杠。这是文档(上面引用的)中概述的过程的粗略概述,因此我建议在尝试实现此操作之前阅读该内容。
关于java - 测试不同代码的性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22816922/