ADB常用命令和logcat

一 adb常用命令
1. 查看设备
adb devices      //当前连接的设备, 连接到计算机的android设备或者模拟器将会显示处理
2. 安装软件 卸载软件
adb install xxx.apk               //安装软件
adb install -r xxx.apk            //重新安装该软件
adb uninstall apk包名.apk         //卸载apk软件 
3. 登录设备shell
adb shell                //进入手机的超级终端Terminal
adb shell <command命令>  //直接shell运行设备命令, 相当于执行远程命令
4. 从PC上发送文件到手机
adb push <本地路径> <远程路径>
adb push D:\xxx.apk system/app/
//A[system/app/]为手机路径,B[D:\xxx.apk]为电脑路径,,把文件从电脑复制到手机上
5. 从手机上下载文件到PC
adb pull <远程路径> <本地路径>
adb pull system/app/xxx.apk D:\
//A[system/app/xxx.apk]为手机路径,B[D:\]为电脑路径,,把文件从手机中复制到电脑上
6. 其他
adb remount           //重新挂载文件系统
adb reboot            //重启手机
adb reboot recovery   //重启到Recovery界面
adb reboot bootloader //重启到bootloader界面

二 log使用

android.util.Log常用的方法有以下5个:Log.v() Log.d() Log.i() Log.w() 以及 Log.e() 。
根据首字母对应VERBOSE,DEBUG,INFO, WARN,ERROR。
1、Log.v 的调试为黑色,任何消息都会输出
2、Log.d 的输出为蓝色,仅输出debug调试信息
3、Log.i 的输出为绿色,一般提示性消息information,无v和d的信息,会显示i、w和e的信息
4、Log.w 的意思为橙色,warning信息,需要我们注意优化Android代码,会输出e的信息。
5、Log.e 为红色错误信息,分析查看栈信息。

三 adb logcat过滤
1. 只显示需要的输出,白名单
最方便的当然是通过管道使用 grep 过滤了,这样可以使用 grep 强大的正则表达式匹配。简单的匹配一行当中的某个字符串,例如 MyApp:
adb logcat | grep MyApp
adb logcat | grep -i myapp #忽略大小写。
2 保存log
使用-d参数,可以在读完所有log后返回,而不会一直等待,在自动化较有用。例如:
adb logcat -d -s xxx > xxx.log //得到filter为xxx的日志,存入xxx.log,然后返回。
3 其他
adb logcat -s TAG名称             //显示某一TAG的日志信息:
adb logcat -v time -s videocamera //打印出 log 信息中时间,以及包含关键字 "videocamera" 的所有 log

四 系统调用命令

1.查看进程的memInfo
adb shell dumpsys meminfo 进程名   //在该命令的后面要加上进程的名字,以确定是哪个进程。
adb shell dumpsys meminfo com.android.mms将得到com.android.mms进程使用的内存信息:
Applications Memory Usage (kB):
Uptime: 495867 Realtime: 3319185
** MEMINFO in pid 2362 [com.android.mms] **
                         Shared  Private     Heap     Heap     Heap
                   Pss    Dirty    Dirty     Size    Alloc     Free
                ------   ------   ------   ------   ------   ------
       Native        0        0        0     3072     2939      117
       Dalvik     6594    11816     6236    15047    14308      739
       Cursor        0        0        0
       Ashmem        0        0        0
    Other dev        4       32        0
     .so mmap      879     1240      500
    .jar mmap        0        0        0
    .apk mmap      141        0        0
    .ttf mmap      119        0        0
    .dex mmap     1185        0        0
   Other mmap      127       20      124
      Unknown     1840      344     1836
        TOTAL    10889    13452     8696    18119    17247      856
 Objects
               Views:       44         ViewRootImpl:        1
         AppContexts:        3           Activities:        1
              Assets:        4        AssetManagers:        4
       Local Binders:       24        Proxy Binders:       38
    Death Recipients:        0
     OpenSSL Sockets:        0
 SQL
         MEMORY_USED:        0
  PAGECACHE_OVERFLOW:        0          MALLOC_SIZE:        0
2.adb shell top
top命令是Linux下常用的性能分析工具,可实时显示系统中各个进程的资源使用情况,有点像Windows的任务管

理器。
3.adb shell cat /proc/meminfo
只能得出系统整个内存的大概使用情况
可以用来查看剩余的空间,通常系统的剩余空间量为:MemFree + Cached
N:\>adb shell cat /proc/meminfo
MemTotal:         908816 kB
MemFree:          347540 kB
Buffers:           17440 kB
Cached:           148340 kB
SwapCached:            0 kB
Active:           243316 kB
Inactive:         128280 kB
如上剩余空间为 347540 kB + 148340 kB
4.adb shell procrank
查看所有进程的内存使用情况,哪些app/进程占用内存过多
一般以PSS栏为参考,关注PSS值较大的进程
N:\>adb shell procrank
  PID      Vss      Rss      Pss      Uss  cmdline
  383   72900K   61928K   30386K   27472K  system_server
  643   62996K   57472K   26467K   24092K  com.android.phone
  699   89816K   49876K   19985K   18116K  com.android.launcher
  503   49708K   44444K   14833K   12904K  com.android.systemui
  789   42392K   42184K   13735K   11648K  android.process.acore
  583   41864K   41568K   12369K   10584K  com.android.settings
 2362   51204K   40140K   11098K    9540K  com.android.mms
 1118   38668K   38452K   10775K    9484K  com.aspire.mmservice
  802   37892K   37656K   10604K    9384K  com.android.contacts
 1391   33760K   33560K    7168K    6004K  cn.emagsoftware.gamehall:b
 1343   32480K   32256K    6277K    5200K  cn.wps.moffice_eng
  550   32908K   32684K    5649K    4300K  android.process.media
 1152   31628K   31412K    5018K    3992K  cmccwm.mobilemusic

 

五、adb启动 应用程序
(1)查看app包名:
进入android操作系统
adb shell
在root@android:/ # 后边,输入
cd data/data
然后输入ls
这样就能看见android系统上安装的安装包 包名:
例如:
cn.com.conversant.swiftsync.android
com.android.backupconfirm
com.android.browser
com.android.calculator2
com.android.calendar
com.android.camera
...
(2)adb启动 应用程序
adb shell am start -n cn.com.conversant.swiftsync.android/ cn.c om.conversant.swiftsync.android.main.SplashActivity
备注:adb shell am start -n 包名/ Activity类的类名
包名和Activity类的类名一定要输入正确,可以用re-sign工具(在最后的弹出信息框会显示出包名和Activity类名)。
六、adb停止 应用程序
adb shell am force-stop   cn.com.conversant.swiftsync.android
备注: cn.com.conversant.swiftsync.android为包名。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值