一、启动或关闭server

1.3  Android SDK中的常用命令行工具

在<Android SDK安装目录>\tools目录中带了很多命令行工具。虽然一般的开发人员并不需要完全掌握这些工具的使用方法,但了解这些工具的一些基本使用方法还是会对以后的开发工作起到一定的辅助作用。本节将介绍几种常用的命令行工具的使用方法,这些工具主要包括adb、android和mksdcard。在使用这些命令行工具之前,建议读者将<Android SDK安装目录>\tools目录加到PATH环境变量中,这样在任何目录中都可以使用这些工具了。

1.3.1  启动和关闭ADB服务(adb start-server和adb kill-server)

经作者测试,模拟器在运行一段时间后,adb服务有可能(在Windows进程中可以找到这个服务,该服务用来为模拟器或通过USB数据线连接的真机服务)会出现异常。这时需要重新对adb服务关闭和重启。当然,重启Eclipse可能会解决问题,但那比较麻烦。如果想手工关闭adb服务,可以使用如下命令:

adb kill-server 

在关闭adb服务后,要使用如下命令启动adb服务:

adb start-server 

二、查询当前模拟器/设备的示例(adb devices)

有时需要启动多个模拟器实例,或启动模拟器的同时通过USB数据线连接了真机。在这种情况下就需要使用如下命令查询当前有多少模拟器或真机在线:

adb devices 

执行上面的命令后,会输出如图1.14所示的信息。

 
图1.14  查询模拟器/设备的实例

其中第1列的信息(emulator-5554、HT9BYL904399)表示模拟器或真机的标识。emulator-5554表示模拟器,其中5554表示adb服务为该模拟器实例服务的端口号。每启动一个新的模拟器实例,该端口号都不同。HT9BYL904399表示通过USB数据线连接的真机。如果在运行Android程序时有多个模拟器或真机在线,会出现一个选择对话框。如果选择在真机运行,ADT会直接将程序安装在手机上。详细介绍读者可以查看14.1.2节的内容。

输出信息的第2列都是device,表示当前设备都在线。如果该列的值是offline,表示该实例没有连接到adb上或实例没有响应。

三、安装、卸载和运行程序

1.3.3  安装、卸载和运行程序(adb install、adb uninstall和am)

在Eclipse中运行Android程序必须得有Android源码工程。如果只有apk文件(Android应用程序的发行包,相当于Windows中的exe文件),该如何安装和运行呢?答案就是adb命令。假设要安装一个ebook.apk文件,可以使用如下命令:

adb install ebook.apk 

假设ebook.apk中的package是net.blogjava.mobile.ebook,可以使用如下命令卸载这个应用程序:

adb uninstall net.blogjava.mobile.ebook 

关于package的概念在以后的学习中会逐渐体会到,现在只要知道package是Android应用程序的唯一标识即可。如果在安装程序之前,该程序已经在模拟器或真机上存在了,需要先使用上面的命令卸载这个应用程序,然后再安装。或使用下面的命令重新安装。

adb install -r ebook.apk 

在卸载应用程序时可以加上-k命令行参数保留数据和缓冲目录,只卸载应用程序。命令如下所示:

adb uninstall -k net.blogjava.mobile.ebook 

如果机器上有多个模拟器或真机实例,需要使用-s命令行参数指定具体的模拟器或真机。例如,下面的命令分别在模拟器和真机上安装、重新安装和卸载应用程序。

在emulator-5554模拟器上安装ebook.apk:

adb -s emulator-5554 install ebook.apk 

在真机上安装ebook.apk:

adb -s HT9BYL904399 install ebook.apk 

在emulator-5554模拟器上重新安装ebook.apk:

adb -s emulator-5554 install -r ebook.apk 

在真机上重新安装ebook.apk:

adb -s HT9BYL904399 install -r ebook.apk 

在emulator-5554模拟器上卸载ebook.apk(不保留数据和缓冲目录):

adb -s emulator-5554 uninstall net.blogjava.mobile.ebook  

在真机上卸载ebook.apk(保留数据和缓冲目录):

adb -s HT9BYL904399 uninstall -k net.blogjava.mobile.ebook 

如果在模拟器和真机上成功安装ebook.apk,将会分别输出如图1.15和图1.16所示的信息。

 
图1.15  在模拟器上成功安装ebook.apk
 
图1.16  在真机上成功安装ebook.apk

如果想在模拟器或真机上运行已安装的应用程序,除了直接在模拟器或真机上操作外,还可以使用如下命令直接运行程序。

在emulator-5554模拟器上运行ebook.apk:

adb -s emulator-5554 shell am start -n net.blogjava.mobile.ebook/net.blogjava.mobile.ebook.Main 

在真机上运行ebook.apk:

adb -s HT9BYL904399 shell am start -n net.blogjava.mobile.ebook/net.blogjava.mobile.ebook.Main 

其中Main是ebook.apk的主Activity,相当于Windows应用程序的主窗体或Web应用程序的主页面。am是shell命令。关于shell命令将在1.3.5节详细介绍。

更多:

Adb工具常用操作(一)

AndroidSdk下载地址和环境变量配置

Android的ADB工具使用

Adb工具常用操作(一)的更多相关文章

  1. Adb工具常用操作-转(二)

    一. PC与模拟器或真机交换文件(adb pull和adb push) 在开发阶段或其他原因,经常需要将PC上的文件复制到模拟器或真机上,或将模拟机和真机上的文件复制到PC上.使用adb pull和a ...

  2. ADB工具常用指令和使用情形分析

    一.ADB常用命令:(不需要进到设备,也就是:不需要执行adb shell) adb devices 列出所有的已连接的设备 adb kill-server 关闭adb adb start-serve ...

  3. Linux记录-lsof打开文件工具常用操作

    lsof `which httpd` //那个进程在使用apache的可执行文件 lsof /etc/passwd //那个进程在占用/etc/passwd lsof /dev/hda6 //那个进程 ...

  4. 版本控制工具——Git常用操作(上)

    本文由云+社区发表 作者:工程师小熊 摘要:用了很久的Git和svn,由于总是眼高手低,没能静下心来写这些程序员日常开发最常用的知识点.现在准备开一个专题,专门来总结一下版本控制工具,让我们从git开 ...

  5. python借助ADB工具实现自动化操作手机

    核心工具——ADB工具 adb工具用于连接Android手机和PC端,我们借助adb工具,就可以通过命令行对手机进行相应的操作 注意:若要通过adb操作手机,需打开手机的开发者模式,并打开USB调试功 ...

  6. Android ADB工具-操作手机和获取手设备信息(四)

    Android ADB工具-操作手机和获取手设备信息(四) 标签(空格分隔): Android ADB 6. 其它命令 命令 功能 adb shell input text <content&g ...

  7. Redis可视化工具安装及常用操作操作

    可视化操作工具:RedisDesktopManager 下载地址:http://www.pc6.com/mac/486661.html 直接安装(傻瓜式安装,直接下一步就可以了)(有Mac和windo ...

  8. 2.SDK目录结构和adb工具及命令介绍

    安卓开发学习笔记 1.安卓开发之环境搭建 2.SDK目录结构和adb工具及命令介绍 1.SDK目录介绍: ******************************** add-ons:Androi ...

  9. Android配置----adb工具的使用

    Adb(android debug bridge):android 调试桥,用于将本地的文件 push 到环境中,或者从手机环境中 pull 文件到本地. 一.ADB的主要功能: · 运行设备的she ...

随机推荐

  1. Codeforces Round #131 (Div. 2) : B

    首先能被2,5整除的数结尾必须是0: 如果没有0肯定不行: 然后判断他们的和ans%3: 如果==0,直接从大到小输出就行: 如果==1,要么删除它们之间最小的那个%3==1的,要么删除两个小的并且% ...

  2. 基于springMVC+springSecurity3.x+Mybaits3.x的权限系统,,开放源码,支持开源

    原文地址:http://blog.csdn.net/mmm333zzz/article/details/16863543/

  3. C语言嵌入式系统编程修炼之六:性能优化

    使用宏定义 在C语言中,宏是产生内嵌代码的唯一方法.对于嵌入式系统而言,为了能达到性能要求,宏是一种很好的代替函数的方法. 写一个"标准"宏MIN ,这个宏输入两个参数并返回较小的 ...

  4. QT变异版本下载(SJLJ长跳转,DWARF不传递错误(32位专用),SEH(64位专用)),以及QT的实验室项目

    http://www.tver-soft.org/ http://sourceforge.net/projects/qt64ng/ ---------------------------------- ...

  5. bzoj1706

    倍增好题,f[p,i,j]表示i到j经过了2^p条边走过的最短路径显然f[p+1]可以由f[p]转移来然后对n二进制拆分累加即可 ; ..,..] of int64; f,pf:..] of int6 ...

  6. luoguP2265 路边的水沟

    题目:http://www.luogu.org/problem/show?pid=2265 题解:ans=C(n+m,n)%p 求一下逆元就行 代码: #include<cstdio> # ...

  7. 在PC上使用串口向开发板传送文件

    之前一直使用的是NFS,即网络挂载文件系统,不愁文件的传输问题,但是不幸的是 前几天网络出现故障,使这种方式没法使用 变好的驱动程序一直没法下载到开发板里面,蛋疼欲裂啊. 于是乎折磨则么使用串口传输 ...

  8. 在MacOSX下用管理员权限打开App应用程序

    最近但疼的事情比较多,特别是升级了10.9以后. 难怪10.9会免费,它喵的当我们所有人都是测试开发者,那我们做实验,到处都是BUG...虽然是这么吐槽了,但是实际上也没有特别大的,能够影响到我的生活 ...

  9. NTP服务器

    server 1.cn.pool.ntp.org server 1.asia.pool.ntp.org server 0.asia.pool.ntp.org pool.ntp.org

  10. oracle hints

    oracle hints 今天是2013-10-08,对于oracle hint有很多,具体可以参考联机手册: http://docs.oracle.com/cd/E11882_01/server.1 ...