转自 http://blog.csdn.net/dull_boy2/article/details/23826649
Android测试中,经常需要kill掉应用程序。
网上有用方法:adb shell中的kill命令后面跟的参数是pid,因此先ps所有的应用程序。缺点是,PS显示很长,找到你的应用比较麻烦。
另一种方法是使用包名,比较简单:
C:\Android\adt-bundle-windows-x86-20130729\sdk\platform-tools>adb shell am force-stop 包名
比如 com.amap。
附录参考:
am命令,am全称activity manager,你能使用am去模拟各种系统的行为,例如去启动一个activity,强制停止进程,发送广播进程,修改设备屏幕属性等等
命令窗口通过adb shell 进入android 的Linux命令界面,输入am -help看到如下信息:
force-stop
kill [options]
kill-all :杀死所有的后台进程。
broadcast [options]
instrument [options]
profile start
profile stop
set-debug-app [options]
clear-debug-app :清空之前用set-debug-app命令设置的package包应用。
以下命令查看官网:
monitor [options]
screen-compat [on|off]
display-size [reset|
display-density
to-uri
to-intent-uri
我们可以通过命令启动android中的Activity,Service,BroadcastReceiver 等组件
1. 拨打一个电话:
am start -a android.intent.action.CALL -d tel:10086
这里-a表示动作,-d表述传入的数据,还有-t表示传入的类型。
2. 打开一个网页:
am start -a android.intent.action.VIEW -d http://www.baidu.com (这里-d表示传入的data)
3. 打开音乐播放器:
am start -a android.intent.action.MUSIC_PLAYER 或者
am start -n com.android.music/om.android.music.MusicBrowserActivity
4. 启动一个服务:
am startservice <服务名称>
例如:am startservice -n com.android.music/com.android.music.MediaPlaybackService (这里-n表示组件)
或者 am startservice -a com.smz.myservice (这里-a表示动作,就是你在Androidmanifest里定义的)
5. 发送一个广播:
am broadcast -a <广播动作>
例如: am broadcast -a com.smz.mybroadcast
6 启动一个Activity
# am start -n 包(package)名/包名.活动(activity)名称
启动的方法可以从每个应用的AndroidManifest.xml的文件中得到
Music 和 Video(音乐和视频)的启动方法为:
# am start -n com.android.music/com.android.music.MusicBrowserActivity
# am start -n com.android.music/com.android.music.VideoBrowserActivity
# am start -n com.android.music/com.android.music.MediaPlaybackActivity
Camera(照相机)的启动方法为:
# am start -n com.android.camera/com.android.camera.Camera
Browser(浏览器)的启动方法为:
# am start -n com.android.browser/com.android.browser.BrowserActivity
启动 google map 直接定位到北京 :
am start -a android.intent.action.VIEW geo:0,0?q=beijing
am还有很多的用法,有待研究。
接下来介绍pm命令,pm全称package manager,你能使用pm命令去模拟android行为或者查询设备上的应用等,当你在adb shell命令下执行pm命令:
pm
你也可以在adb shell前执行pm命令:
adb shell pm uninstall com.example.MyApp
关于一些pm命令的介绍:
list packages [options]
list permission-groups :打印所有已知的权限群组。
list permissions [options]
list features :设备特性。硬件之类的性能。 list libraries :当前设备支持的libs。 list users :系统上所有的users。(上面提到的USER_ID查询方式,如:UserInfo{0:Primary:3}那么USER_ID为0) path install [options] uninstall [options] clear enable disable disable-user [options] revoke set-install-location get-install-location :返回当前的安装位置。返回结果同上参数选项。 set-permission-enforced create-user remove-user get-max-users :该设备所支持的最大USER数。(某些设备不支持该命令) |
http://www.07net01.com/program/577315.html
android中使用adb shell命令kill掉应用程序
http://www.cppblog.com/AutomateProgram/archive/2010/06/10/117595.aspx
由于adb shell中的kill命令后面跟的参数是pid,因此先ps所有的应用程序:
adb在shell下:
ps
USER PID PPID VSIZE RSS WCHAN PC NAME
app_9 720 553 94476 14524 ffffffff afe0d3e4 S com.android.music
例如要关掉music
# kill 720
kill 720