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]

时间: 2024-10-17 06:50:28

Android am命令使用的相关文章

android 用命令行打包生成 apk

android 用 ant 进行 build. android sdk 下面的 tools/ant 下面的 build.xml 就是 build 的整个过程. 其中的 build 参数可在 ant.properties 文件中进行 override.也可以自己定制 build 的脚本. 用 ant build 非常简单 1)安装 ant 并加入到系统 path 变量中 2)为项目生成 build.xml android update project -p . 3)生成 debug 版本 ant

MacBook下配置android adb命令使用环境

想在Mac下使用android adb命令,常用的两种配置方式: 在MacBook下配置adb命令环境(方法一) 1.下载并安装IDE (android studio) 人性化的安装,直接点击下一步下一步就可以完成安装啦 2.配置环境 在安装完成之后,将android的adb工具所在目录加入环境变量里面去  在终端中输入 sudo vim ~/.bash_profile ,打开 .bash_profile文件.按 i 进入输入模式,在文件内容的末尾加入以下内容: #Setting PATH fo

I.MX6 Android CAN 命令行测试

/********************************************************************* * I.MX6 Android CAN 命令行测试 * 说明: * 这里使用can-utils测试一下CAN驱动. * * 2016-8-9 深圳 南山平山村 曾剑锋 ********************************************************************/ 一.shell 命令流程: 1. netcfg c

Android 官方命令深入分析之android

作者:宋志辉 android命令是一个非常重要的开发工具,它可以: 创建.删除和查看Android Virtual Devices(AVDs). 创建和更新android项目. 更新你的android SDK. 如果你在使用Android Studio或者eclipse,android命令已经被整合到IDE中.所以你无需直接在命令行运行.要想查看android命令的介绍,可以运行android –help命令. 语法 android [global 选项] action [action 选项]

史上最强劲的android模拟器命令详解

史上最强劲的android模拟器命令详解 转http://www.eoeandroid.com/thread-23281-1-1.html Android模拟器ndroid SDK自带一个移动设备模拟器 - 它是一个可以运行在你电脑上的虚拟设备. Android模 拟器可以让你不需使用物理设备即可预览.开发和测试Android应用程序. Android模拟器能够模拟除了接听和拨打电话外的所有移动设备上的典型功能和行为. 如右图所示, Android模拟器提供了大量的导航和控制键,你可以通过鼠标或

Android截图命令screencap与视频录制命令screenrecord

Android截图命令screencap 查看帮助命令 [email protected] ~$ adb shell screencap -v screencap: invalid option -- v usage: screencap [-hp] [-d display-id] [FILENAME] -h: this message -p: save the file as a png. -d: specify the display id to capture, default 0. If

iOS,android 常用命令

iOS 常用命令: https://blog.csdn.net/ilikekand17/article/details/81907179 https://www.jianshu.com/p/72c62b079e1e android 常用命令: https://www.jianshu.com/p/ccd35afa8470 原文地址:https://www.cnblogs.com/zhang-dan/p/11018798.html

[Android] adb 命令 dumpsys activity , 用来看 task 中的activity。 (uninstall virus)

用“adb shell dumpsys activity”命令再来查看一下系统运行的的任务,就会看到: ACTIVITY MANAGER ACTIVITIES (dumpsys activity activities) Stack #0: Task id #1 TaskRecord{42db5500 #1 A=com.google.android.googlequicksearchbox U=0 sz=1} Intent { act=android.intent.action.MAIN cat=

android adb 命令详解

ADB (Android Debug Bridge)  是android SDK中的工具,需要先配置环境变量才能使用.起调试桥的作用,可以管理安卓设备.(也叫debug工具) ---------查看设备连接状态 ----------- adb get-serialno  获取设备的ID和序列号<serialNumber> adb devices  查询当前计算机上连接那些设备(包括模拟器和手机) adb get-state  查看模拟器/设施的当前状态. ----------发送命令到设备 -

Android 开发命令行完全攻略

作为命令行的爱好者,我想写这个主题已经有好一段时间了.除了显得很酷之外,命令行的使用能够提高我们的开发效率,因为相比通过鼠标点击一系列的菜单选项,使用键盘输入几个字符并点击 TAB 健显然会快很多. 本文的目的是跟大家分享在我的 Android 开发实践中对命令行的运用. iTerm2 由于我们将会在命令行中进行后续的工作,因此如果能够安装一个比系统默认命令行更好的工具那显然是不错的,那么请下载 iTerm21 吧! iTerm2 将命令行带入了现代化时代,提供了很多你一直想要的特性.其中包含了