进行Android APP测试时,若手持android手机设备稀少的情况下,我们可以通过创建Android模拟器AVD来代替模拟android手机设备,本文就具体介绍如何创建和使用AVD。

1、创建AVD
        每个AVD模拟一套虚拟设备来运行Android应用程序。无论是在Eclipse下或者命令行下创建新的avd,系统会在系统默认文件路径下自动创建一个.android 文件夹,所创建的有关avd的配置信息则被保存在该.android目录下,如:
       C:\Documents and Settings\Administrator\.android

1)命令行方式创建AVD
       进入Android SDK目录下的tools子目录(如:D:\Android\sdk\tools)
       运行:
       android create avd -n SERVYOU -t 2

在创建avd文件得第二步,控制台提示“是否自定义自己得设备”,默认选项是"no",如果输入 "y",接下来可以一步步根据提示,定制自己得模拟器性能参数。

这里t代表target目标平台的Target ID,我们可以使用android list targets来查看这里t的可选参数。
如Target ID=2 对应的android 2.3.3系统平台

我们也可以查看刚刚创建的avd是否已存在,可用命令android list avd查看

上方,只是简单的创建一个avd模拟器,当然我们可以定制模拟器的特定性能参数:

选项:
-t --target 新的AVD 的Target ID(必须)
-c --sdcard 指向一个共享的SD 存储卡的路径或是为新的AVD 定制的新SD 存储卡的容量大小
-p --path 新AVD 将被创建的位置路径
-n --name 新AVD 的名称(必须)
-f --force 强制创建(覆盖已存在的AVD)
-s --skin 新AVD 的皮肤

举例如下:
将建一个名叫GPhone 的AVD,Target ID=6、SD 存储卡容量52M、路径C:\AVD\、皮肤QVGA
创建一个新的AVD:android create avd -n GPhone -t 6 -c 52M -p C:\AVD\ -s QVGA

2)开发工具创建AVD
      在Eclipse中。选择Windows > Android SDK and AVD Manager。
   在帖子android测试开发环境搭建中有描述过,请查看此贴。

2、创建SDcard镜像文件,模拟真实手机设备中的SDcard
       进入Android SDK目录下的tools子目录,运行
       mksdcard -l sdcard 512M  D:\Android\sdk\tools\sdcard.img
       这样就创建了一个512M的SD卡镜像文件:查看D盘,D盘的tools目录下会有一个sdcard.img 文件。

3、命令行下运行AVD时加载sdcard
       进入Android SDK目录下的tools子目录,运行
       emulator -avd SERVYOU -sdcard sdcard.img
注意:此处-sdcard 后跟镜像路径,因为我当前正好是在镜像当前路径,所以路径前缀省略了

输入命令后,可直接启动SERVYOU模拟器,如图

如果不想每次都加-sdcard $sdcard_path,有两个办法:
       解决办法一:可以把sdcard.img 复制到C:\Documents and Settings\Administrator\.android\avd\下对应的AVD目录下。
       解决办法二:修改配置文件,C:\Documents and Settings\Administrator\.android\avd\AVD_NAME.avd\,打开config.ini,加入以下行:sdcard.path=你的SD卡路径。

4、AVD路径设置
       前面提到,不管用Eclipse还是从命令行创建Android Emulator时,相应的文件是被放置到 “C:\Documents
and Settings\Administrator\.android“ 下面。如果想改变AVD的路径设置,也有2个办法:
       解决办法一:
       新添加一个环境变量,名字为 "ANDROID_SDK_HOME”,然后把变量值改为你想将".android”文件夹(AVD信息)所放置的位置
       解决办法二:
       修改配置文件中的路径,比如我的AVD名称是MyAVD, 打开C:\Documents and Settings\Administrator\.android\avd目录中的文件MyAVD.ini文件,找到
       target=android-5path
             =C:\Documents and Settings\Administrator\.android\avd\MyAVD.avd
       修改其路径即可。

遇到ERROR: unknown virtual device name 这样的问题一般是由于AVD文件路径引用错误造成的。

      5、查看当前运行的模拟器/手机设备

运行adb devices,可能查看到当前连接的模拟器和设备

      6、通过命令安装APK到模拟器/真机
运行 adb install APK_Path

     7、通过命令卸载模拟器APK (真机若要通过命令卸载,需要有root权限)
第一种用命令uninstall
运行 adb uninstall APK_Package_name,如上图‘移动电子税务局’的包名为cn.com.servyou.xj
则运行adb uninstall cn.com.servyou.xj

第二种进入模拟器操作系统,通过lunix命令删除(不过此方法会造成APK清理不干净,有残余数据)

adb shell (进入模拟器自带的操作系统)

cd data/app (切换到apk的安装目录)

       rm ***.apk (用Eclipse切换到DDMS的File Explorer中查看,data/app下)

如运行rm cn.com.servyou.xj-1.apk,则可删除‘移动电子税务局’APK包
此时再次运行ls,cn.com.servyou.xj-1.apk包名没有了

第三种,可以再模拟器/真机上直接删除,无需命令,非常简单
进入Setting -> Applications -> Manage applications -> 移动电子税务局 -> Uninstall,就可以直接删除了

通过CMD命令行创建和使用Android 模拟器 AVD的更多相关文章

  1. 学习笔记-使用cmd命令行创建nodejs项目

    使用cmd命令行创建nodejs项目 1)在DOS下cd 进入到你想要创建项目的路径. 2)mkdir sing (创建一个sing文件夹) 3)cd sing  4) npm init (初始化工程 ...

  2. 用cmd命令行创建vue项目模板

    1.进入cmd命令行 输入存放项目的位置 2.通过vue create 项目名称 创建项目 3.选择Manually select features 4.通过空格选中第1.2.5.6.7.去掉8 4. ...

  3. mysql cmd命令行 创建数据库 表 基础语句

    一.连接MYSQL 格式: mysql -h主机地址 -u用户名 -p用户密码 1. 连接到本机上的MYSQL. 首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u roo ...

  4. 【Android测试】【随笔】在手机里用命令行创建中文文件夹

    ◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:http://www.cnblogs.com/by-dream/p/4580319.html 不知道为啥当时自己写了一段在手机里用 ...

  5. 在cmd命令行使用Maven Archetype插件 generate命令创建简单的java web项目

    前提: 1.下载apache-maven:https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache ...

  6. 命令行创建Android应用,生成签名,对APK包签名并编译运行

    一.命令行创建Android应用 android create project -n HelloWorld -t android-22 -p HelloWorld1 -k org.crazyit.he ...

  7. 【转】使用命令行方式创建和启动android模拟器

    原文网址:http://blog.csdn.net/tiandinilv/article/details/8953001 1.Android模拟器介绍 Android中提供了一个模拟器来模拟ARM核的 ...

  8. [APP] Android 开发笔记 001-环境搭建与命令行创建项目

    1. 安装JDK,SDK JDK http://www.oracle.com/technetwork/java/javase/downloads/index.html Android SDK http ...

  9. 命令行创建Android应用,命令行生成签名文件,命令行查看签名信息,对APK包签名并编译运行

    一.命令行创建Android应用 android create project -n HelloWorld -t android-22 -p HelloWorld1 -k org.crazyit.he ...

随机推荐

  1. [poj1811]Prime Test(Pollard-Rho大整数分解)

    问题描述:素性测试兼质因子分解 解题关键:pollard-rho质因数分解,在RSA的破译中也起到了很大的作用 期望复杂度:$O({n^{\frac{1}{4}}})$ #include<cst ...

  2. Attribute meta-data#android.support.VERSION@value value=(25.4.0) from AndroidManifest.xml:25:13-35 is also present at AndroidManifest.xml:28:13-35 value=(26.1.0).

    Android Studio 编译项目的时候报错 Merging Errors: Error: Attribute meta-data#android.support.VERSION@value va ...

  3. phpcms换域名细节

    修改/caches/configs/system.php里面所有和域名有关的,把以前的老域名修改为新域名. 进入后台设置-->站点管理,对相应的站点的域名修改为新域名. 点击后台右上角的&quo ...

  4. 20.Consent Controller Get请求逻辑实现

    在这里之前讲的这一块的信息就要登场了 需要通过构造函数把这几个注入进来 县引入这三个命名空间 把这三个注入进来,这就是显示依赖 先通过returnUrl拿到这个Request request拿到后,就 ...

  5. Socket()与WSASocket()的区别

    socket()   创建一个通讯端点并返回一个套接口.但是在socket库中例程在应用于阻塞套接口时会阻塞.     WSASocket()的发送操作和接收操作都可以被重叠使用.接收函数可以被多次调 ...

  6. 无监督学习:Deep Generative Mode(深度生成模型)

    一 前言 1.1 Creation 据说在费曼死后,人们在他生前的黑板上拍到如图画片,在左上角有道:What i cannot create ,I do not understand. Generat ...

  7. 为什么要用babel-polyfill

    1.为什么要用babel-polyfill Babel默认只转换新的JavaScript句法(syntax),而不转换新的API,比如 Iterator.Generator.Set.Maps.Prox ...

  8. DataGridView DataSource INotifyPropertyChanged 避免闪烁的方法

    代码说话: dgvPosition就是需要避免闪烁的DataGridView 主要是加2段代码 1.SetStyle 2.datagridview设置DoubleBuffered属性为True pub ...

  9. Pycharm 设置TextStyle

    之前在脚本中选择了一个字符串, PyCharm会"高亮"所有相同的字符串, 但是我不满意这个"高亮"的颜色,因为和背景色太相似了,所以需要做一下操作,修改这个& ...

  10. [Algorithm]巧用多项式系数与进制的联系

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...