Android am命令使用
一、开启Activity、服务、广播
1.开启Activity、服务、广播基础知识
通过adb shell,可以使用activity manager(arm)工具来执行不同的系统操作,如开启一个action,开启一个activity、强制停止一个线程、修改设备屏幕属性等等,adb shell命令格式如下:
am <command>
1)intent
intent可以理解为不同组件通信的媒介或者信使;
intent可以启动一个Activity,也可以启动一个Service,好可以发起一个广播Broadcast
通过intent,你的程序可以像Android表达某种请求或者意愿,Android会根据意愿的内容选择适当的组件来完成请求
|
Intent |
说明 |
Am参数 |
| component | 组件名称 格式为:包名/类名 | -n |
| action | 指定Intent的执行动作,比如调用拨打电话组件 | -a |
| data_url | 表示与动作要操纵的数据 | -d |
| category | categary是一个字符串,提供了额外的信息,有关于能够处理这个Intent对象的组件种类 | -c |
| extra | 传递给Intent的额外数据,以Bundle的形式定义,就是一些键值对 | -e |
| mime_type | MIME类型 | -t |
| flags | 各种类型的flag,很多是用来指定Android系统如何启动activity,还有启动了activity后如何对待他 | -f |
| package | 包名 | -p |
2)启动Activity
#启动界面 adb shell am start [参数] <INTENT>
|
参数 |
说明 |
| -D | 开启调试模式 |
| -W | 等待启动完成 |
| --start-profile <file> | 开始分析器和发送结果(文件) |
| --sampling INTERVAL | 使用样本分析 间隔:微秒 样品(使用—start-profiler)之间 |
| -P <FILE> | 应用空闲下来后,停止profile |
| -R COUNT | 重复活动推出<统计>次。每个重复之前,活动将会结束 |
| -S | 组织目标应用开始前的活动 |
| --opengl-trace | 启用跟踪OpenGL函数 |
| [—user <USER_ID> | current] | 指定哪些用户运行,如果不指定则使用当前用户 |
3)启动和停止服务
#启动服务 adb shell am startservice [参数] <INTENT> #停止服务 adb shell am stopservice [参数] <INTENT>
| 参数 | 说明 |
| --user <USER_ID> | current | 指定哪些用户运行,如果不指定则使用当前用户 |
4)启动广播
#启动广播 adb shell am broadcast [参数] <INTENT>
| 参数 | 说明 |
| --user <USER_ID> | current | 指定哪些用户运行,如果不指定则使用当前用户 |
二、内存与进程操作
1.内存操作
获取heap文件:adb shell am dumpheap [参数] <process>
| 参数 | 说明 |
| --user <USER_ID> | current | 指定哪些用户运行,如果不指定则使用当前用户 |
| -n | 获取native heap而不是managed heap |
例如:
adb shell am dumpheap com.android.browser /data/local/tmp/test.hprof
#获取内存快照(后缀名必需为.hprof)
使用adb pull /data/local/tmp/test.hprof e:\命令将testr.hprof文件保存到电脑本地
使用命令:hprof-conv e:\test.hprof e:\test1.hprof进行文件转化
然后就可以使用mat工具对内存进行查看分析
2.进程操作
adb shell am force-stop [参数] <process>
#强制停止应用(process=包名)
adb shell am kill [参数] <process>
#停止后台单个进程
adb shell am kill-all
#停止后台所进程
三、调试相关操作
1.性能相关
截图来自极客学院

Traceview是android平台配备一个很好的性能分析的工具。它可以通过图形化的方式让我们了解我们要跟踪的程序的性能,并且能具体到method。
2.监听异常
监听crash和ANR:adb shell monitor [options]
Android am命令使用的更多相关文章
- Android adb 命令使用总结
adb原理 参考文档 How ADB works http://www.cnblogs.com/ifantastic/p/5186362.html http://blog.csdn.ne ...
- Android 官方命令深入分析之android
作者:宋志辉 android命令是一个非常重要的开发工具,它可以: 创建.删除和查看Android Virtual Devices(AVDs). 创建和更新android项目. 更新你的android ...
- Android ADB命令教程二——ADB命令详解
Android ADB命令教程二——ADB命令详解 转载▼ 原文链接:http://www.tbk.ren/article/249.html 我们使用 adb -h 来看看,adb命令里面 ...
- android adb命令 抓取系统各种 log
getLog.bat: adb root adb remount adb wait-for-device adb logcat -v time > C:\log.txt 在Android中不同的 ...
- android: shell 命令
adb是Android重要工具之一,以提供强大的特性,例如复制文件到设备或从设备复制文件.可以使用Android Shell命令行参数连接到手机本身,并发送基本的 shell 命令. 进入命令行,使用 ...
- Android截图命令screencap与视频录制命令screenrecord
Android截图命令screencap 查看帮助命令 bixiaopeng@bixiaopeng ~$ adb shell screencap -v screencap: invalid optio ...
- MacBook下配置android adb命令使用环境
想在Mac下使用android adb命令,常用的两种配置方式: 在MacBook下配置adb命令环境(方法一) 1.下载并安装IDE (android studio) 人性化的安装,直接点击下一步下 ...
- I.MX6 Android CAN 命令行测试
/********************************************************************* * I.MX6 Android CAN 命令行测试 * 说 ...
- iOS,android 常用命令
iOS 常用命令: https://blog.csdn.net/ilikekand17/article/details/81907179 https://www.jianshu.com/p/72c62 ...
- 【转】Android Monkey 命令行可用的全部选项
常规 事件 约束限制 调试 原文参见:http://www.douban.com/note/257030384/ 常规 –help 列出简单的用法. -v 命令行的每一个 -v 将增加反馈信息的级别. ...
随机推荐
- python循环综合运用
循环很重要,计算机很蠢,唯一的优势就是按照指令不停的执行,所以决定在说一下. break语句,用在循环体中,迫使循环立即终止,即跳出所在循环体,继续执行循环体后面的语句. sum=0 i=1 whil ...
- xml配置文件特殊符号的处理方法
2017.7.19遇到问题:偶然出现“认证失败,请重新登录”的现象 在xml中英文问号“?”是可以被正常解析的,但是以下这几种符号是不能正常解析的:分别是“&”.“<”.“>” ...
- PHP使用Sublime Text3技巧
1 下载安装 2 安装Package Control 3 安装插件 4 快捷键 5 项目管理 6 设置代理 PHP开发时,笔者用过EditPlus3.Nodpad++.Vi.Vim和Netbeans, ...
- 获取session
HttpServletRequest request = ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()) ...
- 20135316王剑桥 linux第六周课实验笔记
6.存储器层次结构 6.1存储技术 1.如果你的程序需要的数据是存储在CPU寄存器中的,那么在执行期间,在零个周期内就能访问到它们.如果存储在高速缓冲中,需要1-10个周期.如果存储在主存中,需要50 ...
- iOS应用程序内打开指定qq聊天、给某人打电话
-(void)btn2Clik { UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectZero]; NSURL *url = [N ...
- Sprint计划表
Sprint会议计划 一.Sprint 需求 准备环节:小组成员利用周六周日在网上查阅Android开发的教程,练习开发一些简单的小程序,具备一定的开发能力,在电脑上搭建Android开发环境,做好 ...
- WPF四则运算《《《《《策略模式
设计思路: 因为之前没有用过WPF,听说和window窗体语法类似,就想着仿照之前的Window窗体做的,首先用三个textbox存储数据,添加一个comboBox,利用索引选择运 ...
- BeanCreationException报错启动不起来(jar包冲突)
一月 23, 2015 3:46:13 下午 org.apache.catalina.core.AprLifecycleListener init 信息: The APR based Apache T ...
- DPDK flow_filtering 源码阅读
代码部分 main.c /*- * BSD LICENSE * * Copyright 2017 Mellanox. * * Redistribution and use in source and ...