【问题标题】:Android Monitor Graph logsAndroid Monitor Graph 日志
【发布时间】:2016-12-06 16:12:14
【问题描述】:

我有一个简单的应用程序,其中包含两个实现,我想在一定时间内根据使用情况相互比较(基准)。

两种实现的测试方法相同(它们都执行完全相同的命令/事件)唯一的区别是它们处理命令和事件的方式。

我希望每秒获取一个日志:

  • CPU 负载
  • 内存使用情况
  • 网络流量

Android 监视器在图表中提供我需要的一切,并每秒记录当前 CPU 负载、内存使用情况和网络流量的 TX/RX,太棒了!

但是,我希望将这一切都保存在文本日志中,而不是实时图表中。有人能告诉我在哪里可以找到这样的日志吗?或者如果没有这样的东西,有什么建议可以得到类似的数据?

【问题讨论】:

标签: android android-studio ddms


【解决方案1】:

Doppie,我寻找使用开箱即用工具的解决方案,但没有很好的方法可以使用 Android 工具将您想要的信息导出到文本文件而无需大量工作。 Logcat 过于冗长并且需要转换,而且 Dalvik 并不能准确地为您提供对数据收集的每一秒的控制。我也希望有一个简单的解决方案。 :/

[免责声明:因为我与 Perfecto 合作,我知道他们云实验室中的设备可以轻松完成此操作,因此如果您尝试诊断特定问题,您可以使用他们的免费公共云并导出设备生命周期 (如下所示)。这不是一个推销,但由于它是免费的,它可能在短期内对你有所帮助。]

【讨论】:

  • 谢谢保罗!这正是我所需要的。
【解决方案2】:

首先,如果您要查找内存日志。有一个选项你可以直接去检查那个。

打开 Android 设备监视器,然后检查堆转储。检查内存使用情况。

另一种监控 Android 设备监视器的方法,然后查看分配跟踪器,它会为您提供使用内存的每个类的详细信息。

希望这些事情你可以直接检查你的当前日志。

单击 Android Monitor 并查看 logcat 和第二个选项 Monitors。

Monitors 为您提供四种类型的详细信息: 1. 内存使用。 2.你的手机CPU使用率如何。 3.网络 4. GPU。

现在在这些事情之后。如果您仍然有问题,则需要检查您的 gradle。

你使用了什么样的库。

首先删除不需要的库。 其次只需要导入有用的库。就像如果您在应用中查找与地图相关的内容,则仅导入。

compile "com.google.android.gms:play-services-maps:9.4.0" 

不是这个。

compile 'com.google.android.gms:play-services:9.4.0'

了解库的复制。 示例:如果您使用一些库并且该 libaray 包含 appcompt 并且您在应用程序端也使用相同的 libaray。那么最好将该 libaray 用作模块。

最后尝试使用 proguard 规则。 这些是处理更好的内存管理的几种方法。 我在这里做了一个安卓应用架构是link.

谢谢,希望对你有帮助。

【讨论】:

  • 感谢您的回答,但是如果您正确阅读了我的问题,它会说我每秒都在寻找日志,这或多或少是不可能手动完成的。我不是在尝试优化性能,我已经这样做了;)
  • 我已经提到了每秒检查事件的方法
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-15
  • 2021-09-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多