转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持!

继上一篇Android
Studio VS Eclipse
的文章后接着来分享AnDevCon大会上的内容(这是别人分享给我的。导致中间非常多遗漏,很多都是我自己上网找资料补充的,请见谅),今天的主题是关于Android模拟器的一些事。

简单介绍:

Android Virtual Device就是我们常说的模拟器了。简称AVD或者Emulator。对模拟器的管理都在一个叫做Android Virtual
Device Manager里。

模拟器为什么这么慢

大家都知道有模拟器这么一个东西,但为什么大家都不用。主要原因就是模拟器太慢了,所以肯定有人就抱怨说Google模拟器做的真垃圾。再看看IOS的模拟器。由于当初我就是当中一个,哈哈。

但为什么模拟器会这么慢呢?

主要原因就是CPU的问题。

如今Android手机上用的全部CPU都是ARM的,执行的都是ARM的android系统镜像。可是我们的台式机都是Intel的。所以我们在台式机上执行Android模拟器就会导致很的慢。所以解决的方法就是使用执行Intel系统镜像的android模拟器。

Android
x86模拟器&HAXM:

据说Intel也要进军手机CPU市场了。所以Intel推出支持x86的Android模拟器。

并且Intel还推出了一个硬件加速管理器:Intel
Hardware Accelerated Execution Manager 简称Intel HAXM.

在Intel的电脑上执行这个x86模拟器再配合HAXM将会得到和Android真机相媲美的执行效果。我看过他的演示效果。大概启动到执行须要4,5秒吧,并且特别流畅。

由于我家里SDK下载实在太慢了,所以我没有安装他,大家假设感兴趣能够下一个。网上非常多相关教程帖子能够參考。除了懒另一个不装他的原因就是另一个更好的模拟器Genymotion。

更强大的模拟器-Genymotion。

Genymotion安卓模拟器事实上不是普通的模拟器,严格来说,genymotion是一个虚拟机。

因为他的种种特性和长处如今被越来越多的开发。測试甚至游戏玩家所使用。

接下来说说我使用了一个多月的感受:

长处:

1.速度

速度真的很快。

全然媲美真机。在我电脑上从点run開始启动模拟器到程序执行仅仅用5-10秒钟,之后模拟器不用关闭。基本就是点run之后瞬间执行。响应速度和流畅度真的和真机没有区别。

2.全机型模拟

能够选择市面上差点儿全部主流的手机设备。平板略微少一些。只是能够自定义随意大小屏幕和配置来解决问题。所以Genymotion特别适合那种设备不齐全。设备不多的情况。

3.鼠标(触摸板)加键盘操作

速度上来后模拟器的优势就体现出来了,再也不须要拿着手机按来按去。或者连着usb线各种方向的转屏。直接鼠标点击(鼠标差一些,我用的触摸板感觉更方便)。键盘输入,特别快捷。

当然多点触摸和传感器什么的略微费劲一点,只是应用开发这些一般非常少涉及这些。

4.能够同一时候启动多个模拟器

有的时候大家都会遇到这种情况,改一点小问题执行看下效果,再改一点再看效果。或者平板手机同一时候开发,须要两边一起观看效果。

这时我就会执行2,3个模拟器加上1,2个真机轮番作战,效率大大提高。

5.特别适合在家里开发

在家里开发不可能有那么多设备,这时候有个模拟器一切问题都攻克了。

6.安装软件

安装软件能够从桌面直接拖拽到模拟器中安装,相当的方便。

7.能够随便折腾

中国的手机都是没有Google框架和服务的,用不了Google Play。Google+,另一些其它Google推出的一些app。由于在有非常多时候我们须要模仿国外大公司产品的特效或者界面,这时候就须要去执行它(Google Play装好以后直接搜索想安装的软件就能够了。但须要代理或VPN)。

Genymotion的优势又出来,框架、服务随便装,随便弄,直接下好拖拽进去即可了。弄乱了弄坏了再建个新的。

8.截图

在执行中有什么问题或须要直接截图到电脑。比用手机截图方便非常多。

缺点:

1.偶尔遇到和真机效果不同的地方。公司的项目有个自己定义的搜索栏。用真机能够正常输入,但模拟器点不进去,一直不知道什么原因,除了这一个问题以外没有再发现类似情况。

2.偶尔会直接从程序里弹出来,看log应该是模拟器图形内存的问题。只是遇到这样的情况再执行一次就好了。

3.模拟不了kindle。应该是由于kindle的系统高度自制的原因吧。

Genymotion的中文官方http://www.genymotion.cn/

使用前须要注冊一个账号。并且要装Virtual Box虚拟机,非常easy,网上教程非常多。

总结:

说了这么多,目的还是和上次的Android Studio那篇文章一样。就是希望没用过的都来试试。

最后放几张关于Genymotion的使用图片。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTM5NjkwMTk5MA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

最初执行Genymotion是没有Google框架和服务的,装好gapps后就多了Google Play,Google+,Gmail等应用

Google+

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTM5NjkwMTk5MA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

Gmail截图

Google Play截图

facebook截图。大家有的话能够加我好友啊,哈哈。

。。

关于ANDROID模拟器的一些事的更多相关文章

  1. eclipse中如何查看一个android模拟器的内部文件

    eclipse中如何查看一个android模拟器的内部文件,有时要在其中添加一个文件夹或是什么的,要手动的做这件事,而不能够用代码去完成时,就要用这个方法了. 1.首先,打开一个安卓模拟器. 2.这个 ...

  2. 比真机还快的Android模拟器——Genymotion

    比真机还快的Android模拟器--Genymotion                                                     ----转载请注明出处:coder-p ...

  3. Android零基础入门第7节:搞定Android模拟器,开启甜蜜之旅

    原文:Android零基础入门第7节:搞定Android模拟器,开启甜蜜之旅 在前几期中总结分享了Android的前世今生.Android 系统架构和应用组件那些事.带你一起来聊一聊Android开发 ...

  4. 第三方Android 模拟器流畅速度快,适合开发人员

    “工欲善其事,必先利其器.” 使用Android模拟器开发和调试应用肯定比使用真机方便.但相比XCODE的IOS模拟器,Android SDK自带的AVD实在不争气,不过一些第三方的模拟器却表现不俗! ...

  5. Android 谈谈封装那些事 --BaseActivity 和 BaseFragment(二)

      1.前言 昨天谈了BaseActivity的封装,Android谈谈封装那些事--BaseActivity和BaseFragment(一)有很多小伙伴提了很多建议,比如: 通用标题栏可以自定义Vi ...

  6. android模拟器没有键盘的解决方法

    刚开始使用android模拟器的时候,发现自己创建的AVD启动后没有出现侧边的键盘,在网上搜索后,发现很多人都有这个问题,也有文章说直接使用PC上的键盘,因为有对应的快捷键.但是,没有键盘,始终不爽! ...

  7. 向Android模拟器中批量导入通讯录联系人

    使用adb命令向Android模拟器中批量导入通讯录联系人的方法: 使用adb提供的命令, 可以非常方便地从PC中将通讯录批量导入android模拟器中. 首先要先准备好固定格式的vcf文件, 该文件 ...

  8. Andy - 又一款速度流畅的免费安卓 Android 模拟器 (支持手机无线控制电脑模拟器)

    随着 Genymotion.BlueStacks 等电脑上的 Android 模拟器流行起来之后,似乎很多人都发现在电脑上运行使用安卓APP软件.畅玩手机游戏确实很有乐趣. 今天我们又发现了一款全新免 ...

  9. android 模拟器上网问题

    android 模拟器上网问题 1.配置Adroid环境变量(Win7为例) ,启动模拟器 第一步:桌面右键——>我的电脑——>高级系统设置    第二步:高级——>环境变量——&g ...

随机推荐

  1. 删除数据库所有存储过程的SQL语句

    --/第1步**********删除所有表的外键约束*************************/ DECLARE c1 cursor for select 'alter table ['+ o ...

  2. R语言学习笔记:choose、factorial、combn排列组合函数

    一.总结 组合数:choose(n,k) —— 从n个中选出k个 阶乘:factorial(k) —— k! 排列数:choose(n,k) * factorial(k) 幂:^ 余数:%% 整数商: ...

  3. 函数fgets和fputs、fread和fwrite用法小结(转)

    字符串读写函数fgets和fputs: 1.fgets()函数:原型char *fgets(char *s, int n, FILE *stream);从流中读取n-1(n默认1024)个字符之前,如 ...

  4. 一步一步学习IdentityServer3 (8)

    IdentityServer3结合Hangfire及Cookies中间件实现授权 Idr3数据库Token过期管理 GlobalConfiguration.Configuration.UseSqlSe ...

  5. 关于《C++ Templates》

    最近买了<C++ Templates>来看,书最开始部分阐述了关于此书的一些编程风格.本人感觉非常好,有些地方之前一直容易搞混,这里却讲述的很清楚.例如: 关于下面几种风格的代码: voi ...

  6. linux中shell,awk,sed截取字符串方法总结

    转自:http://www.cnblogs.com/kinga/p/5772566.html Shell 第一种: ${parameter%word} 最小限度从后面截掉word${parameter ...

  7. vim中E121:无法打开并写入文件解决办法

    1.使用命令  :w !sudo tee % 保存即可. 其中: 冒号(:)表示我们处于vim的退出模式: 感叹号(!)表示我们正在运行shell命令: sudo和tee都是shell命令: %表示从 ...

  8. MongoDB入门教程一[文档与集合]

    MongoDB 是面向集合存储的文档型数据库,其涉及到的基本概念与关系型数据库相比有所不同.举个例子,在关系型数据库中,我们记录一个订单的信息,通常是这样设计表结构的: 设计一个订单基本信息表和一个订 ...

  9. CentOS 配置自启动Redis

    第一步: 在/etc/init.d/目录下建立一个名字为 redis 的启动脚本 cd /etc/init.d touch redis 然后在这个脚本中添加如下脚本  <注意修改自己的PIDFI ...

  10. 基于 Laravel 开发博客应用系列 —— 从测试开始(二):使用Gulp实现自动化测试

    3.使用 Gulp 进行 TDD(测试驱动开发) Gulp 是一个使用 JavaScript 编写的自动化构建工具.用于对前端通用任务(如最小化.压缩.编译)进行自动构建.Gulp 还可以用来监控源代 ...