一、 PC与模拟器或真机交换文件(adb pull和adb push)

在开发阶段或其他原因,经常需要将PC上的文件复制到模拟器或真机上,或将模拟机和真机上的文件复制到PC上。使用adb pull和adb push命令可以很容易地完成这个工作。例如,下面的命令将真机的SD卡根目录下的camera.jpg文件复制到PC的当前目录,取名为picture.jpg。又把picture.jpg文件复制到真机的SD卡的根目录,取名为abc.jpg。

从真机上复制文件到PC:

  1. adb -s HT9BYL904399 pull /sdcard/camera.jpg picture.jpg

从PC复制文件到真机:

  1. adb -s HT9BYL904399 push picture.jpg /sdcard/abc.jpg

如果读者安装了ADT,可以通过DDMS透视图的【File Explorer】视图右上方的几个按钮方便地从模拟器或真机上导入、导出和删除文件。

二、 Shell命令

Android是基于Linux内核的操作系统,因此,在Android上可以执行Shell命令。虽然在手机上提供了可以输入命令的Shell程序,但在手机上输入程序实在不方便。为了更方便地在模拟器或手机上执行Shell命令,可以使用如下命令在PC上进入Shell控制台:

adb -s HT9BYL904399 shell 

Shell控制台的提示符是一个井号(#)。进入Shell后,输入cd system/bin命令,再输入ls命令,可以看到当前Android系统支持的命令文件,如图1.17所示。读者可以根据实际情况使用相应的命令。

三、 创建、删除和浏览AVD设备(android)

在1.2.4节介绍了如何在Eclipse中建立一个AVD设备。本节将介绍直接使用android命令建立和删除AVD设备。建立AVD设备的命令如下:

  1. android create avd -n myandroid1.5 -t 2

其中myandroid1.5表示AVD设备的名称,该名称可以任意设置,但不能和其他AVD设备冲突。-t 2中的2指建立Android 1.5的AVD设备,1表示Android 1.1的AVD设备,以此类推。目前最新的Android 2.1应使用-t 6来建立AVD设备。在执行完上面的命令后,会输出如下信息来询问是否继续定制AVD设备:

  1. Android 1.5 is a basic Android platform.
  2. Do you wish to create a custom hardware profile [no]

如果读者不想继续定制AVD设备,直接按回车键即可。如果想定制AVD设备,输入y,然后按回车键。系统会按步提示该如何设置。中括号内是默认值,如果某个设置项需要保留默认值,直接按回车键即可。如果读者使用的是Windows XP,默认情况下AVD设备文件放在如下目录中:

  1. C:\Documents and Settings\Administrator\.android\avd

如果想改变AVD设备文件的默认存储路径,可以使用-p命令行参数,命令如下:

  1. android create avd -n myandroid1.5 -t 2 -p d:\my\avd

删除AVD设备可以使用如下命令:

  1. android delete avd -n myandroid1.5

通过下面的命令可以列出所有的AVD设备:

  1. android list avds

四、创建SD卡

在模拟器上测试程序经常需要使用SD卡。在PC上需要使用mksdcard命令创建一个虚拟的SD卡文件,创建一个10MB大小的SD卡文件的命令如下:

  1. mksdcard -l sdcard 10MB sd.img

其中sdcard表示SD卡的卷标,10M表示SD卡的大小,单位还可以是KB。但要注意,SD卡的大小不能小于8MB,否则无法创建SD卡文件。sd.img是SD卡的文件名。如果要在Eclipse中启动模拟器,或直接启动模拟器(使用emulator命令),需要使用-sdcard命令行参数指定SD卡文件的绝对路径。

1.4  PC上的Android

在程序发布之前,最好在真机上测试一下,毕竟模拟器无法100%地模拟真机的环境。如果没有真机该怎么办呢?模拟器虽然可以正常运行大多数Android程序,但模拟器的环境毕竟是模拟出来的,并不是真正的Android操作系统。当然,还可以想其他的办法。Android从理论上也可以运行在PC上。因此,可以采用像Android LiveCD一样的PC版Android操作系统来测试程序。这可是真正的Android操作系统,只是运行在PC上,而不是手机上。下面来感受一下PC上的Android。

1.4.1  Android LiveCD

Android LiveCD是code.google.com上的一个开源项目,以ISO形式发布,可直接从光盘启动。在作者写作本书时,Android LiveCD的最新版是0.3。读者可以从下面的地址下载Android LiveCD的最新版:

  1. http://code.google.com/p/live-android/downloads/list

下载后,使用VMWare或其他的虚拟机软件装载ISO文件,然后从光盘(ISO文件)启动即可。启动后的界面如图1.18所示。运行程序后的效果如图1.19所示。

 
(点击查看大图)图1.18  Android LiveCD的运行界面
 
图1.19  在Android LiveCD中运行程序的效果

向Android LiveCD上传apk程序可以采用多种方法。如果PC可以上网,可以采用wget命令从Internet下载apk程序。

wget http://ip地址/blogger.apk 

更多:

Adb工具常用操作(一)

AndroidSdk下载地址和环境变量配置
Android的ADB工具使用

Android adb不是内部或外部命令 (转)

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

  1. Adb工具常用操作(一)

    一.启动或关闭server 1.3  Android SDK中的常用命令行工具 在<Android SDK安装目录>\tools目录中带了很多命令行工具.虽然一般的开发人员并不需要完全掌握 ...

  2. Git常用操作(二)

    仓库拉取 git clone XXX 修改仓库链接 $ git config -l # 显示coding列表 $ git config --get remote.origin.url # 返回orig ...

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

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

  4. Oracle常用操作-----(二)

    Oracle主要类型函数: 单行函数:只能输入一行结果,返回一个结果.常见的单行函数有: 字符函数 数字函数 转换函数 日期函数 2.聚合函数:同时可以对多行数据进行操作,并返回一个结果.(AVG.S ...

  5. Python脚本控制的WebDriver 常用操作 <十二> send_keys模拟按键输入

    下面将使用WebDriver中的send_keys来模拟键盘按键输入 测试用例场景 send_keys方法可以模拟一些组合键操作: ctrl+a ctrl+c ctrl+v 等. 另外有时候我们需要在 ...

  6. Selenium常用操作汇总二——如何操作select下拉框

    下面我们来看一下selenium webdriver是如何来处理select下拉框的,以http://passport.51.com/reg2.5p这个页面为例.这个页面中有4个下拉框,下面演示4种选 ...

  7. Selenium常用操作汇总二——如何操作cookies(转)

    Web 测试中我们经常会接触到Cookies,一个Cookies主要属性有”所在域.name.value.有效日期和路径",下面来讲一下怎么操作Cookies. import java.ut ...

  8. Selenium常用操作汇总二——如何处理alert、confirm、prompt对话框

    alert.confirm.prompt这样的js对话框在selenium1.X时代也是难啃的骨头,常常要用autoit来帮助处理. 试用了一下selenium webdriver中处理这些对话框十分 ...

  9. Git 常用操作(二)

    第一次传数据:echo "# miya" >> README.mdgit initgit add README.mdgit commit -m "first ...

随机推荐

  1. 测试一下MarkDown

    欢迎使用Markdown编辑器写博客 本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接 ...

  2. SpringMVC+Json构建基于Restful风格的应用(转)

    一.spring 版本:spring-framework-3.2.7.RELEASE 二.所需其它Jar包: 三.主要代码: web.xml <?xml version="1.0&qu ...

  3. Batik - 将svg转换成其他格式图片或PDF - [导出服务器配置] 导出服务器原理解析

    导出服务器原理解析 Highcharts图表导出(或下载)本质上是将SVG代码转换为不同文件格式的过程,用到的工具是batik,所以所谓导出服务器,只不过是调用batik,将SVG代码转换并下载.下图 ...

  4. Lua常用的数据结构表示

    1.矩阵 Lua中有两种表示矩阵的方法,一是“数组的数组”.也就是说,table的每个元素是另一个table.例如,可以使用下面代码创建一个n行m列的矩阵:mt = {}          -- cr ...

  5. 【HDOJ】1754 I Hate It

    线段树. #include <iostream> #include <cstdio> #include <cstring> using namespace std; ...

  6. Node.js权威指南 (5) - 使用Buffer类处理二进制数据

    5.1 创建Buffer对象 / 705.2 字符串的长度与缓存区的长度 / 725.3 Buffer对象与字符串对象之间的相互转换 / 74 5.3.1 Buffer对象的toString方法 / ...

  7. 【ajax】reqwest

    ded / reqwest All over again. Includes support for xmlHttpRequest, JSONP, CORS, and CommonJS Promise ...

  8. 数据结构与算法分析——C语言描述

    P1.1 选择问题,选择出第K大的数,并画出N为不同值的运行时间,K=N/2 毕业两年半,重写排序,感觉良好.代码使用冒泡排序,库函数clock计算大致运行时间. // P1_1.cpp : Defi ...

  9. iOS类的继承关系

  10. 【动态规划】天堂(Heaven) 解题报告

    天堂(heaven) 题目描述 每一个要上天堂的人都要经历一番考验,当然包括小X,小X开始了他进入天堂的奇异之旅.地狱有18层,天堂竟然和地狱一样,也有很多很多层,天堂共有N层.从下到上依次是第1,2 ...