创建安卓模拟器的两种方式及常用Android命令介绍
创建安卓模拟器有以下两种方式:
1>通过图形界面创建,在Eclipse中单击Windows->Android Virtual Device Manager启动图形界面窗口
2>如果用的不是Eclipse,则可以切换到~/tools/文件夹,在终端执行"android avd",单击Create 按钮,则可以创建一个新的模拟器。
2.使用镜像功能加快模拟器的启动速度。
也许你在启动Android模拟器重新启动的速度很慢,因此新增了一个保存和恢复模拟器状态的镜像功能,用以加快模拟器重启的速度。镜像功能是将整个模拟器进程中的内存保存到硬盘中,从镜像恢复的过程实际上是将原先保存在硬盘中的内存文件恢复到模拟器进程的内存中。其跳过了模拟器启动和初始化的步骤,故启动速度变快。
首先需要编辑模拟器配置以启动该功能,在模拟器列表中选择要设置的模拟器,并单击"Edit”按钮编辑它,找到Snapshot(上图中红色框出部分)并勾选,如果需要重启模拟器则需要在Launch Options对话框勾掉下图中的两个选项,这样就不是从镜像中恢复,而是从头启动模拟器了。
3.通过命令行创建模拟器
在大规模自动化测试中,通过图形界面创建显然费时费力,因此可以用命令行去创建。且在Android中,图像界面和命令行界面均由同一个程序android创建,所不同的是,如果向android传递一个avd参数,如下:android avd,则会启动图形界面,使用其他参数则通过命令行界面。
1)打卡终端,切换到tools目录下。
2)在创建之前需要指明模拟器的Android系统版本,在Android SDK工具包中,每个Android系统都被分配了一个标识号,,这个标识号,可以通过"android list target”查看。
其中是id:2表示Android 5.0.1这个版本的标识号是2,Type:Platform表明这个一个标准的Android版本,没有外挂任何其他组件,如果Type的值是Add-On,表明这是一个其他Android设备厂商定制的版本,附有一些额外的组件。
3)命令行创建AVD: android create avd -n <模拟器名称> -t <目标Android系统标识号> [-<选项><选项的值>]
假如创建过程中出现如下图的错误提示,仔细看是需要假如--abi选项,加上之后如图所示,且如果你选择的是一个Type: Platform(标准的Android系统)则会询问硬件配置情况,如果需要定制则输入yes,否则就直接回车,默认不需要特别定制,稍等之后模拟器就创建好了。
4)可以用"android list avd"查看模拟器。
5)Android命令会在宿主机上创建一个专用的文件夹来存放模拟器的信息,包括模拟器的配置文件、用户数据以及虚拟SD卡等。这个文件夹不包含Android系统文件,而是通过在配置文件中指明目标系统标识号,这样模拟器启动时会自动从Android开发工具包中加载系统镜像。
Android命令还在目录.android/avd下为新的模拟器创建以模拟器名称命名的.ini文件,该文件指明了模拟器配置文件的保存地址。WIN7默认放在C:\Users\<user>\.android\下。
此ini文件的保存位置可以在创建模拟器时用-p 来指定。
一个AVD(Android Virtual Device)有以下这些部分组成:
1>硬件配置:例如,是否配有相机,是否配有物理键盘,多大内存等。
2>软件配置:定义了模拟器上运行的Android平台的版本,既可以指定标准的Android版本,也可以是定制的Android系统。
3>外观配置:定义模拟器使用的皮肤,通过皮肤控制模拟器的屏幕物理尺外观,还可以指定模拟器使用的虚拟SD卡。
4>在宿主机上的存储区域:模拟器上的用户数据和虚拟SD卡都存储在这个地方。
6)Android的其他命令
android move avd -n <模拟器名称> -p <要移动到的目录>
移动模拟器命令:此<要移动到的目录>无须提起创建,执行命令的同时,执行创建操作。
android move avd -n <模拟器名称> -r <模拟器新的名称>
重命名模拟器
android delete avd -n <模拟器名称>
删除模拟器,同时删除相应模拟器的配置文件、用户数据及虚拟SD卡等数据。
android -h
查看Android命令
android -h <子命令>
查看各个子命令的使用方法
附加:
emulator -avd <模拟器名称> -memory 512 &
启动模拟器,同时指定内存大小,否则使用默认设置。
adb -e shell cat /proc/meminfo
查看模拟器内存大小,可以修改.android\模拟器名称\config.ini文件中hw.ramSize的值或者创建模拟器时指定比较大内存。
假如模拟器启动之后,无法关闭,则参照一下办法杀死模拟器进程。使用"ps aux | grep emulator",列出模拟器进程,并用"kill -9 <进程ID>"杀死模拟器进程。
可以同时启动多个Android模拟器,且每个模拟器都在新开一个端口开与宿主机上的开发工具通讯,这个端口号显示在模拟器进程的标题栏上,且通过"telnet localhost <模拟器端口号>"连接模拟器,输入help会显示所有命令。
创建安卓模拟器的两种方式及常用Android命令介绍的更多相关文章
- 创建Java多线程的两种方式和线程异常
一.使用多线程的两种方法 使用多线程的两种方法有:继承Thread类和实现runable接口. 二.继承Thread类 来看一下thread类的源代码: class Thread implement ...
- Java进阶知识16 Spring创建IOC容器的两种方式
1.直接得到 IOC 容器对象 ApplicationContext applicationContext = new ClassPathXmlApplicationContext("app ...
- 【java并发】传统线程技术中创建线程的两种方式
传统的线程技术中有两种创建线程的方式:一是继承Thread类,并重写run()方法:二是实现Runnable接口,覆盖接口中的run()方法,并把Runnable接口的实现扔给Thread.这两种方式 ...
- k8s创建资源的两种方式
命令 vs 配置文件 Kubernetes 支持两种方式创建资源: 1. 用 kubectl 命令直接创建 kubectl run nginx-deployment --image=nginx: -- ...
- python_106_创建类的两种方式
class Foo(object): def __init__(self, name): self.name = name f = Foo("alex") print(type(f ...
- Java中创建String的两种方式
1.在Java中,创建一个字符串有两种方式 String x = "abc";String y = new String("abc"); 这两种方式有什么区别呢 ...
- Java并发基础01. 传统线程技术中创建线程的两种方式
传统的线程技术中有两种创建线程的方式:一是继承Thread类,并重写run()方法:二是实现Runnable接口,覆盖接口中的run()方法,并把Runnable接口的实现扔给Thread.这两种方式 ...
- pod(一):Kubernetes(k8s)创建pod的两种方式
目录 一.系统环境 二.前言 三.pod 四.创建pod 4.1 环境介绍 4.2 使用命令行的方式创建pod 4.2.1 创建最简单的pod 4.2.2 创建pod,指定镜像下载策略 4.2.3 创 ...
- Unity调用Android的两种方式:其一、调用jar包
unity在Android端开发的时候,免不了要调用Java:Unity可以通过两种方式来调用Android:一是调用jar.二是调用aar. 这篇文章主要讲解怎么从无到有的生成一个jar包,然后un ...
随机推荐
- morphia(6-1)-查询
1.filter morphia语法: query.filter("price >=", 1000); mongodb语法: { price: { $gte: 1000 } ...
- Tomcat固定的目录结构
1. /work Tomcat把由Jsp生成的Servlet放于此目录下. 2. /webapps 当发布Web应用时,默认情况下把Web应用文件放于此目录下. 3. /logs 存放Tomcat的日 ...
- NUP2201MR
NUP2201MR:双总线保护IC(瞬态抑制二极管),常用于USB总线的保护.
- JavaScript Allongé 第一呷 :基础函数 (2)
啊!我想要有一个参数 到现在为止,我们已经了解了没有参数的函数.只说我们的函数没有任何参数,甚至还没说参数是什么.大多数程序员非常熟悉参数,中学数学就讨论这个了.所以你知道他们是什么,而我也知道你知道 ...
- python_14(js)
第1章 图片方法 1.1 设置背景图:1.2 背景图问题:1.3 background-repeat; noa-repe 1.4 background-attachment: fixed1.5 bac ...
- 《javascript设计模式》笔记之第七章:工厂模式
在读了这章之后,根据我个人现在的理解,工厂模式就是:将一个类或者一个方法称为一个工厂,然后再将一些模块交给这个工厂,让这个工厂按照给它的不同模块产出不同的实例. 下面为正文: 一:简单工厂: 例子: ...
- 禁用和关闭ECSHOP缓存
ECSHOP的缓存机制从一定程度上可以减少ECSHOP反复读取数据库的几率,从而一定程度上降低服务器负担,提高访问速度. 但是启用缓存机制,对一些新手站长也有不利的地方.我就遇到很多新手站长经常问,我 ...
- 下面给出了四种设计模式的作用: 外观(F
下面给出了四种设计模式的作用: 外观(Fa?ade :为子系统中的一组功能调用提供一个一致的接口,这个接口使得这一子系统更加容易使用: 装饰(Decorate):当不能采用生成子类的方法进行扩充时,动 ...
- .Net 第一章笔记
1.深入.NET框架 对象数组 登录和注册 内存级别数据的拎取 1..NET 战略 Java领域:::::SQL Server不会用到 浏览器IE 口号:任何人 在任何地方 使用任何终端,,都可以使用 ...
- MySQL主从复制原理介绍
1)在mysql主库上,将改变记录到二进制日志(binary log)中. 2)在mysql从库上,IO线程将mysql主库上二进制日志(binary log)复制到中继日志(replay log)中 ...