[Android] 性能获取方式-转自淘测试

简介:
原文地址:http://www.taobaotesting.com/blogs/2189  
不需要再安装任何性能监测工具,直接如下访问,帮助完成性能数据的获取和查看。 

Android apk 需要关注的点:apk大小、apk启动时间、流量、电量、CPU运行时长、内存、actvity切换时间等。 


android性能数据采集: 
流量数据: 
    /proc/self/net/dev   中的:eth0 和 rmnet0 对应数据和 

result-eg: 
    Inter-|   Receive                                                |  Transmit 
face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed 
    lo:    2304      32    0    0    0     0          0         0     230432    0    0    0     0       0          0 
  eth0:  122801    1712    0    0    0     0          0         0   232055    1399    0    0    0     0       0          0 
  sit0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0 
    
    
apk信息: 
   命令: aapt d badging   可获取:packagename、versioncode、launchActivity ---- 供后面启动时间等传参使用

result-eg: 
    package: name='com.taobao.taobao' versionCode='56' versionName='3.3.1' 
launchable-activity: name='com.taobao.tao.Welcome' 

# 电量信息及CPU 使用时长 
    命令: adb shell dumpsys batteryinfo  packagename 
结果包含如下数据:network ---received and send 大小;wake lock window:屏幕唤醒时长;sensor:传感器时长;cpu运行时长(包含各子进程的时长,后台service等) 

result-eg: 

#10109: 
    Network: 10.81MB received, 118.94KB sent 
    Wake lock window: 7s 232ms window (2 times) realtime 
    Sensor 0: 1m 31s 22ms realtime (27 times) 
    Proc com.taobao.taobao: 
      CPU: 1m 46s 270ms usr + 27s 410ms krn 
      10 proc starts 
    Proc com.taobao.taobao:taobao_remote: 
      CPU: 4s 220ms usr + 640ms krn 
      2 proc starts 
    Proc com.taobao.taobao:remote: 
      CPU: 530ms usr + 430ms krn 
      2 proc starts 
    Apk com.taobao.taobao: 
      Service com.taobao.tao.WWMessageService: 
        Created for: 45m 40s 653ms  uptime 
        Starts: 2, launches: 2 

#客户端启动时间获取: 
   命令: adb logcat -c && adb logcat -s ActivityManager | grep  "Displayed”  可获取到actvity的切换时间 ,其中可以获取到launch Activity对应的时间-----即apk启动时间。 

result-eg: 

   Line 1387: I/ActivityManager(   59): Displayed activity com.taobao.taobao/com.taobao.tao.Welcome: 2438 ms (total 2438 ms) 
     

# 内存情况获取: 
   命令 adb shell dumpsys meminfo  packagename 
   获取 alloc 和 size的值 

result-eg: 

    ** MEMINFO in pid 2427 [com.taobao.taobao] ** 

                    native   dalvik    other    total 

            size:    14416     8583      N/A    22999 

       allocated:    10800     6383      N/A    17183 

            free:      647     2200      N/A     2847 

           (Pss):     3193     7545    13536    24274 

  (shared dirty):     1180     4040     2772     7992 

    (priv dirty):     3168     5660     7756    16584 

   =========================================================================== 
   对任何apk,都可以通过以上命令获取到对应的性能数据。
目录
相关文章
|
12月前
|
数据采集 监控 机器人
浅谈网页端IM技术及相关测试方法实践(包括WebSocket性能测试)
最开始转转的客服系统体系如IM、工单以及机器人等都是使用第三方的产品。但第三方产品对于转转的业务,以及客服的效率等都产生了诸多限制,所以我们决定自研替换第三方系统。下面主要分享一下网页端IM技术及相关测试方法,我们先从了解IM系统和WebSocket开始。
274 4
|
3月前
|
测试技术 UED 开发者
性能测试报告-用于项目的性能验证、性能调优、发现性能缺陷等应用场景
性能测试报告用于评估系统性能、稳定性和安全性,涵盖测试环境、方法、指标分析及缺陷优化建议,是保障软件质量与用户体验的关键文档。
|
10月前
|
缓存 Java 测试技术
【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
1182 3
【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
|
11月前
|
Dart 前端开发 Android开发
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
335 1
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
|
12月前
|
算法 Java 测试技术
使用 BenchmarkDotNet 对 .NET 代码进行性能基准测试
使用 BenchmarkDotNet 对 .NET 代码进行性能基准测试
281 13
|
12月前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
165 11
|
12月前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
194 10
|
12月前
|
算法 Java 测试技术
Benchmark.NET:让 C# 测试程序性能变得既酷又简单
Benchmark.NET是一款专为 .NET 平台设计的性能基准测试框架,它可以帮助你测量代码的执行时间、内存使用情况等性能指标。它就像是你代码的 "健身教练",帮助你找到瓶颈,优化性能,让你的应用跑得更快、更稳!希望这个小教程能让你在追求高性能的路上越走越远,享受编程带来的无限乐趣!
554 13
|
并行计算 算法 测试技术
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面,旨在通过综合策略提升程序性能,满足实际需求。
419 1
|
缓存 Ubuntu Linux
Linux环境下测试服务器的DDR5内存性能
通过使用 `memtester`和 `sysbench`等工具,可以有效地测试Linux环境下服务器的DDR5内存性能。这些工具不仅可以评估内存的读写速度,还可以检测内存中的潜在问题,帮助确保系统的稳定性和性能。通过合理配置和使用这些工具,系统管理员可以深入了解服务器内存的性能状况,为系统优化提供数据支持。
884 4

热门文章

最新文章