惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

The Hacker News
The Hacker News
博客园_首页
人人都是产品经理
人人都是产品经理
博客园 - 聂微东
J
Java Code Geeks
Stack Overflow Blog
Stack Overflow Blog
Blog — PlanetScale
Blog — PlanetScale
博客园 - 三生石上(FineUI控件)
A
About on SuperTechFans
V
Visual Studio Blog
小众软件
小众软件
MyScale Blog
MyScale Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
F
Full Disclosure
酷 壳 – CoolShell
酷 壳 – CoolShell
T
The Exploit Database - CXSecurity.com
C
CERT Recently Published Vulnerability Notes
T
Threat Research - Cisco Blogs
AWS News Blog
AWS News Blog
T
Tor Project blog
Jina AI
Jina AI
GbyAI
GbyAI
C
Comments on: Blog
IT之家
IT之家
Apple Machine Learning Research
Apple Machine Learning Research
A
Arctic Wolf
有赞技术团队
有赞技术团队
SecWiki News
SecWiki News
L
Lohrmann on Cybersecurity
Security Latest
Security Latest
Webroot Blog
Webroot Blog
C
Cisco Blogs
雷峰网
雷峰网
云风的 BLOG
云风的 BLOG
博客园 - 叶小钗
K
Kaspersky official blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
宝玉的分享
宝玉的分享
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
O
OpenAI News
H
Hacker News: Front Page
D
Darknet – Hacking Tools, Hacker News & Cyber Security
D
Docker
P
Palo Alto Networks Blog
The Register - Security
The Register - Security
B
Blog RSS Feed
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
WordPress大学
WordPress大学
阮一峰的网络日志
阮一峰的网络日志

博客园 - 随我畅翔

APP测试相关点归纳 APP自动化测试 android app 压力测试工具-monkey tool android测试开发环境搭建 android 内存泄露测试 NullPointerException检测 iOS Automated Tests with UIAutomation 命令方式重新签名apk Monkey log分析说明 iOS应用程序生命周期 RunTests.sh && RunIPhoneSecurityd.sh ios UI自动化测试 ios UnitTest 学习笔记1 如何通过Xcode 5中集成的XCTest框架进行简单的单元测试 curl命令使用大全 APP启动原理 Git和SVN的5个基本区别 IOS自动化测试之UIAutomation 编写Robotium测试程序
通过CMD命令行创建和使用Android 模拟器 AVD
随我畅翔 · 2014-08-21 · via 博客园 - 随我畅翔

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

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

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

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

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

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

上方,只是简单的创建一个avd模拟器,当然我们可以定制模拟器的特定性能参数:
7.jpg
选项:
-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 文件。
10.jpg

       3、命令行下运行AVD时加载sdcard
       进入Android SDK目录下的tools子目录,运行
       emulator -avd SERVYOU -sdcard sdcard.img
注意:此处-sdcard 后跟镜像路径,因为我当前正好是在镜像当前路径,所以路径前缀省略了
11.JPG
输入命令后,可直接启动SERVYOU模拟器,如图
9.jpg
       如果不想每次都加-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,可能查看到当前连接的模拟器和设备
12.jpg       6、通过命令安装APK到模拟器/真机
运行 adb install APK_Path
13.jpg
14.jpg      7、通过命令卸载模拟器APK (真机若要通过命令卸载,需要有root权限)
第一种用命令uninstall
运行 adb uninstall APK_Package_name,如上图‘移动电子税务局’的包名为cn.com.servyou.xj
则运行adb uninstall cn.com.servyou.xj
16.jpg

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

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

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

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

如运行rm cn.com.servyou.xj-1.apk,则可删除‘移动电子税务局’APK包

此时再次运行ls,cn.com.servyou.xj-1.apk包名没有了 18.jpg

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