创建安卓模拟器的两种方式及常用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 ...
随机推荐
- Hive_Hive的安装
嵌入模式不推荐使用. 本地模式多用于开发和测试. 远程模式多用于生产环境.
- jQuery toggleClass 源码解读
toggleClass: function( value, stateVal ) { var type = typeof value;//值类型 if ( typeof stateVal === &q ...
- 20 个案例教你在 Java 8 中如何处理日期和时间?
前言 前面一篇文章写了<SimpleDateFormat 如何安全的使用?>, 里面介绍了 SimpleDateFormat 如何处理日期/时间,以及如何保证线程安全,及其介绍了在 Jav ...
- Nginx pathinfo模式配置
正常配置 location ~ \.php$ { fastcgi_pass ; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $docu ...
- lowbit
树状数组(lowbit) Time Limit:1000ms Memory Limit:128MB 题目描述 这天,LYK在学习树状数组. 当它遇到一个叫lowbit的函数时有点懵逼.lowbit ...
- 初探ant design pro
1.增加路由子页面&配置菜单 因为ant design pro采取的是umi路由配置,所以只要在对应的文件夹下新建相关的文件夹以及文件,它会自动解析.按照如下的步骤做即可 PS.如果想要给菜单 ...
- CSS3 基本要素概览
这篇文章将对 CSS 的几个新属性 (text-shadow,box-shadow,and border-radius) 做基本介绍.这些 CSS3 属性通常用来加强页面布局. RGBA 前面的 ...
- 利用nodejs读取数据库数据生成树结构的json数据
在做后台管理界面的时候,几乎少不了的一个结构就是树形结构,用来做菜单导航: 那么,最希望的就是树结构的所有数据都是读取的数据库,而不是直接代码当中写死,那我们就一步一步来看: 一,建表 字段通常包括: ...
- 浅谈C++ 内存泄漏及其检测工具
浅谈C++ 内存泄漏及其检测工具 http://wenku.baidu.com/link?url=1DGkOOvd_ITZyB8IHAwfhCOx2tfO6id8UfuyQkAMHZU6sasaAXz ...
- Android 仿微信朋友圈发表图片拖拽和删除功能
朋友圈实现原理 我们使用 Android Device Monitor 来分析朋友圈发布图片的界面实现原理.如果需要分析其他应用的界面实现也是采用这种方法哦. 打开 Android Device Mo ...