转自:http://www.52rd.com/Blog/Detail_RD.Blog_blogercn_71675.html

android在开发者模式下,我们能够使用adb执行andorid手机上system/bin/目录下的几乎所有命令。这些命令有的和linux的原始命令功能一样,有些是android独有的,有些是MTK添加的。但他们无一例外,功能都相当强大。熟练使用这些命令,可以有效的减少程序调试的工作量。

am指令可以发送广播,可以启动activity,可以启动服务,同时还能在特定的窗口关闭他们。因此对于UI调试和模块交叉调试十分有用,一是对于一些不设置launcher的动作的activity,没有办法通过菜单启动,这时可以使用am指令,二是对于一些需要参数才能运行的activity,直接运行可能出错或者无法调用其功能,需要am来启动。三是在一些launcher和屏幕锁窗口,没有办法直接调用其他程序,但其他程序又会在特定条件下在这些窗口启动,为了测试他们交互运行情况,需要am指令。四对于一些在特定某些广播下运行的服务,活动,广播接收器来说,调试难度很大,使用am可以轻松解决。

5对于一些窗口调用出错的程序,也可以通过am指令来验证是发送出错还是接收出错

1.am启动一个activity

adb shell am start com.example.scr/.MainActivity

2.am启动一个带参数的activity

adb shell am start -n com.magcomm.touch/.TouchLetterActivity --es letter "e"

--es传递的是字符串,还有ei,el,ez等参数

-n使用包名加类名,还有a动作,c CATEGORY等

3.am发送一个广播,使用action

adb shell am broadcast -a magcomm.action.TOUCH_LETTER

4.am发送一个带参数的广播,使用action

adb shell am broadcast -a magcomm.action.TOUCH_LETTER --es letter "e"

5.am启动一个服务,不带参数时默认使用包名加类名启动,参数时n,a,c

adb shell am startservice com.android.music/.MediaPlaybackService

6.关闭一个activity或者服务之类,使用包名就行

adb shell am force-stop com.magcomm.touch

pm指令也很有用

1.可以列出手机上安装的apk与对应的软件包,由于使用命令删除apk时,需要知道包名,通过这条命令加上grep或者find就能找到需要的软件的包名

adb shell pm list packages -f

2找出对应包的安装目录路径,两条指令结合,可以知道要拷贝给别人的软件位于手机什么地方

adb shell pm path com.example.scr

2.可以列了使用的权限

adb shell pm list permission-groups

adb shell pm list permissions

转载请注明出处:

User_Index.rd

参考:

http://bbs.ydss.cn/thread-96113-1-1.html

android常用的一些UI调试命令am,pm的更多相关文章

  1. 【android】android 常用adb 和 adb shell 命令

    db是SDK自带的工具,可实现桥接功能:adb shell 可以与手机系统建立交互,是基于andoid Linux系统下的操作 ADB常用命令: 1. 查看设备         adb  device ...

  2. Android UI 调试常用工具(Dump view UI hierarchy for Automator)

    UI调试时程序员比较头疼的问题:有时候经常会被1dp.2dp的问题,搞得无言以对(Android开发深有体会) 下面介绍一个在实际开发过程中常用的一个调试工具,可以精确到每个View在屏幕中的绝对位置 ...

  3. Android 常用 adb 命令总结

    Android 常用 adb 命令总结 针对移动端 Android 的测试, adb 命令是很重要的一个点,必须将常用的 adb 命令熟记于心, 将会为 Android 测试带来很大的方便,其中很多命 ...

  4. Android 常用adb shell 命令

    原文地址http://blog.csdn.net/rain_butterfly/article/details/40894807 调试Android程序有时需要adb shell 命令,adb全称An ...

  5. Android 常用adb shell 命令(转)

    调试Android程序有时需要adb shell 命令,adb全称Android Debug Bridge ,就是起到调试桥的作用. 通过adb我们可以在Eclipse中通过DDMS来调试Androi ...

  6. [原创]Android 常用adb命令总结

    [原创]Android 常用adb命令总结 1 adb介绍 1.1 adb官方网站及下载 官方网站下载安装:http://adbshell.com/downloads 1.2 adb安装是否成功检查? ...

  7. Android 常用 adb 命令

    查看原文:http://blog.csdn.net/u010818425/article/details/52266593 (一)基础操作 安装app adb install -r xxx.apk / ...

  8. iOS之LLDB常用调试命令

    LLDB是个开源的内置于XCode的调试工具,这里来理一理常用用法.lldb对于命令的简称,是头部匹配方式,只要不混淆,你可以随意简称某个命令.结果为在xcode下验证所得,可能与其它平台有所误差. ...

  9. iOS,android 常用命令

    iOS 常用命令: https://blog.csdn.net/ilikekand17/article/details/81907179 https://www.jianshu.com/p/72c62 ...

随机推荐

  1. vector与set区别(基础知识)

    首先,vector是序列式容器而set是关联式容器.set包含0个或多个不重复不排序的元素.也就是说set能够保证它里面所有的元素都是不重复的.另外对set容器进行插入时可以指定插入位置或者不指定插入 ...

  2. Support Vector Machines for classification

    Support Vector Machines for classification To whet your appetite for support vector machines, here’s ...

  3. 6种编写HTML和CSS的最有效的方法

    感谢HTML5和CSS3,以及JavaScript,前端开发者有了大大的用武之地.大家都在用很多的工具和技术来武装自己,以加快前段的开发. 本文分享了6中最有效的方法,希望能提供你的效率,为你节约时间 ...

  4. Silverlight实例教程 – Datagrid,Dataform数据验证和ValidationSummary(转载)

    Silverlight 4 Validation验证实例系列 Silverlight实例教程 - Validation数据验证开篇 Silverlight实例教程 - Validation数据验证基础 ...

  5. ssh项目删除

    1.在页面添加删除跳转 <td><a href="deleteStandard.action?id=${sta.id }">删除</a>< ...

  6. IHttpModule在webconfig中的注册

    在asp.net中,提供了两种方式用来解决获取由asp.net服务器创建和维护的HttpApplication对象,方便注册HttpApplication对象的事件处理.这两种方式为:IHtpModu ...

  7. 在ubuntu上面安装phpmyadmin后,报404错误

    安装完mysql后,我想装一个phpmyadmin方便mysql管理. 在终端执行命令:sudo apt-get install libapache2-mod-auth-mysql phpmyadmi ...

  8. mysql 的设置

    网上的一些文章都已经比较老了,现在版本高了之后,其实配置是很省力的(不考虑什么负载的话) 分享全过程,出了文中提到的安装epel rpmfushion 源指令不同外,其他的过程也适用与Centos 5 ...

  9. [整理]Web应用安全学习

    最近在复习TCP/IP相关知识,同时也想对网络安全相关的知识进行系统的补漏. 阅读了一些常见的关于XSS.CSRF等的一些网上文章: http://www.cnblogs.com/luminji/ca ...

  10. 基础知识系列☞Abstract和Virtual→及相关知识

    转载地址→http://www.cnblogs.com/blsong/archive/2010/08/12/1798064.html 在C#的学习中,容易混淆virtual方法和abstract方法的 ...