用ADB(Android Debug Bridge)实时监测Android程序的运行

2023-03-18,,

 
监控Android设备上程序的运行,需要ADB的配合,具体ADB工具的介绍以及命令选项可见博客: http://blog.csdn.net/mliubing2532/article/details/7579146,关于SDK可以google~

有了ADB其实还不够,我们知道
Android系统中自带的命令很少,其实不够用,连find,grep,less都没有(我的Android手机里面就没有)。可以为其安装busybox,来为其添加更多可用的command tools. 

如果需要从busybox源码开始的话,需要设置交叉编译链接器(Cross Compiler),然后从源码得到ARM下的ELF文件,具体参考博文:
http://blog.csdn.net/liaoshengjiong/article/details/3957725

不过既然busybox官网上已经有ARM下的二进制文件了,那就直接copy啦。

进入
http://www.busybox.net/downloads/binaries/,可以看到好几个版本,这里我下载了一个不旧不新的版本(1.20.0/b
usybox-armv6l)

这里需要使用Android SDK提供的adb(Android Debug Bridge)将文件发送到Android设备上.

首先进入到Android Shell中,在/data文件夹下创建busybox文件夹

1. cmd> 
adb shell

2. 
shell@android: /$ 
mkdir busybox  (如果不行就先su root,再创建)

在cmd下运行以下命令(我的busybox-armv6l在F盘下)

3.cmd>
adb push  f:/busybox-armv6l /data/busybox

为busybox-armv6l改名为busybox(只是看着顺眼),并且添加可执行权限

4.shell@android:/data/busybox$ 
mv busybox-armv6l busybox

5.
shell@android:/data/busybox$ 
chmod 766 busybox

你可以把busybox添加到PATH路径中,这里直接在busybox目录下测试了

现在我们就可以通过ADB SHELL来实时监测Android设备上程序的运行情况了,CPU使用率,内存占用情况等

比如我要监测我手机上QQ的运行情况,这里我的QQ应用程序对应的是app_75,

使用如下命令来实时监测:

shell@android:/data/busybox$ 
top | ./busybox grep app_75

输出的结果如下图所示,最后我退出了QQ,可以看到最后的内存占用情况都变成0了~~

还有:
用NDK打包Android工程终于搞定了,`日`

 

用ADB(Android Debug Bridge)实时监测Android程序的运行的相关教程结束。

《用ADB(Android Debug Bridge)实时监测Android程序的运行.doc》

下载本文的Word格式文档,以方便收藏与打印。