Android模拟器开发和调试应用比使用真机方便,而且可以修改模拟器源码,android 源码,随心所欲地模拟自己想要的设备,随心所欲地修改android 源码,甚至是更底层的linux 源码。

目录

模拟器源码下载

编译

模拟的设备

自带的一些工具:

(1)adb

(2)am

各种安卓模拟器对比:


模拟器源码下载

Android 模拟器源码的下载与 Android AOSP 源码库的下载过程类似。

模拟器的分支:在 https://android.googlesource.com/platform/manifest/+refs (国内上不去)可以看到所有可以指定的分支,包括 Android 分支和模拟器分支,其中模拟器分支主要有如下这些:

  • emu-1.4-release
  • emu-1.5-release
  • emu-2.0-release
  • emu-2.2-release
  • emu-2.3-release
  • emu-2.4-arc
  • emu-2.4-release
  • emu-2.5-release
  • emu-2.6-release
  • emu-2.7-release
  • emu-2.8-release
  • emu-29.0-release
  • emu-3.0-release
  • emu-3.1-release
  • emu-gn-dev
  • emu-master-dev
  • emu-master-qemu
  • emu-master-qemu-release

下载最新模拟器代码:

 repo init -u https://android.googlesource.com/platform/manifest -b emu-master-dev

在国内可以使用清华源更快下载:

 repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b emu-master-dev

编译

cd external/qemu/android/
./rebuild.sh --no-tests
  • --no-tests: 告诉编译系统,编译完成之后不要执行测试程序,以节省时间,提高效率

模拟的设备

模拟包括下面一些功能的ARM SoC,其中包括goldfish在内的linux内核驱动:

* ARM926ej-S CPU

* Thumb support

* MMC

* RTC

* Keyboard

* USB Gadget

* Framebuffer

* TTY driver

* NAND FLASH

当然,模拟器和真实的机子还是存在差别的,不同之处在于:

* 不支持呼叫和接听实际来电;但可以通过控制台模拟电话呼叫(呼入和呼出)
    * 不支持USB连接

* 不支持相机/视频捕捉

* 不支持音频输入(捕捉);但支持输出(重放)

* 不支持扩展耳机

* 不能确定连接状态

* 不能确定电池电量水平和交流充电状态

* 不能确定SD卡的插入/弹出

* 不支持蓝牙

自带的一些工具:

(1)adb

ADB(Android Debug Bridge)是Android 提供的一个通用的调试工具,借助这个工具,我们可以管理设备或手机模拟器的状态

(2)am

在shell内使用am来加载android应用

各种安卓模拟器对比:

市面上已经有不少安卓模拟器,主要分为谷歌原生,以emu系列为主,主要是采用qemu+自己修改+openGL穿透+X86虚拟化(HASM)。另外一种以面向游戏为主,采用的技术:Vbox+openGL穿透+houdini(二进制翻译)。可以在x86为主的平台上运行arm 的应用程序。

android 模拟器介绍相关推荐

  1. android 模拟器的使用(Android模拟器介绍及创建)

    做了这么久的android开发,一直想把在开发过程中积累的经验或问题总结一下,可是都没有时间,现在有一点点空闲,所以慢慢把我在android中遇到的问题整理一下写出来,供自己以后参考,也希望和大家一起 ...

  2. 【Android-Emulator】Android模拟器介绍和基本使用

    接下来讲解的是ANDROID模拟器的介绍和使用,最后还有PC电脑和ANDROID模拟器访问模拟器之间tcp/udp通信,写这篇文章大部分是从网络上获取的信息,希望对大家有帮助 1.Android模拟器 ...

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

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

  4. 介绍Visual Studio的Android模拟器

    介绍Visual Studio的Android模拟器 http://blogs.msdn.com/b/visualstudioalm/archive/2014/11/12/introducing-vi ...

  5. android 模拟器 sd卡文件 fileexport,linux下android模拟器的启动和SD卡的使用介绍.pdf...

    主机配置主机配置 32 位 XP vbox 虚拟机 32 位 ubuntu10 04 android2 2 源码 JDK1 5 1 编译编译 android2 2 源码源码 编译环境准备好之后 在终端 ...

  6. 史上最快Android模拟器:Genymotion使用介绍

    转自:http://blog.csdn.net/wtbee/article/details/17113365 做过Android开发的您一定为Google开发的Android模拟器苦恼过,其慢得出名的 ...

  7. 创建安卓模拟器的两种方式及常用Android命令介绍

    创建安卓模拟器有以下两种方式: 1>通过图形界面创建,在Eclipse中单击Windows->Android Virtual Device Manager启动图形界面窗口 2>如果用 ...

  8. Android模拟器adb命令介绍

    在SDK的Tools文件夹下包含着Android模拟器操作的重要命令adb,adb的全称为Android Debug Bridge,就是调试桥的作用 在SDK的Tools文件夹下包含着Android模 ...

  9. Android三种模拟器介绍

    我的新书<Android App开发入门与实战>已于2020年8月由人民邮电出版社出版,欢迎购买.点击进入详情 文章目录 AVD genymotion MuMu模拟器 AVD AVD也就是 ...

  10. Android模拟器学framework和driver之传感器篇1(linux sensor driver)

    对于android模拟器开发环境的搭建这里我就不多说了,网上google下一大堆,还有就是android 模拟器的kernel使用的是goldfish的kernel,可以使用git得到源码,然后就可以 ...

最新文章

  1. 算个欧拉函数给大家助助兴(米勒拉宾(判断素数)+Pollard_rho(求一个大数的因子 ))
  2. 知识图谱有哪些方向是可以深入研究的?
  3. EditPlus注册码在线生成,强大
  4. 使用分发列表过滤BGP路由
  5. Vue.js基础体验(一)
  6. RequireJS使用注意地方
  7. 判断一个无符号整数是不是2的幂
  8. ddns客户端_DDNS哪家最方便?试试看Mikrotik的ROS!
  9. __builtin_expect详解
  10. 使用NVM管理Node - Windows
  11. 多方法接口回调_浅析接口定义和接口回调
  12. 数字图像处理与python实现 pdf_python数字图像处理的学习路线?
  13. 网络工程 IP地址与子网掩码
  14. (转载)李开复:我在硅谷看到的最前沿科技趋势
  15. java 面试宝典总结
  16. Unity 模拟鼠标点击
  17. AMD GPU任务调度(1)—— 用户态分析
  18. 除了专业技能,Web前端工程师需要具备哪些基本素质?
  19. 字节跳动员工晒出税后工资,网友:怀疑你是日薪
  20. 那些年逃离北京的软件测试员,现在都怎么样了?

热门文章

  1. SQL语句进阶学习一(where、通配符、正则表达式、计算字段、数据处理函数、分组数据)
  2. There is no index in the referenced table where the referenced columns appear as the first columns.
  3. 无线网服务器连接不上什么原因,无线路由器连接不上是什么原因
  4. 使用Guacamole实现远程桌面控制
  5. 网吧组建及相关技术(无盘技术;VLAN;PacketTrace)
  6. 交换机路由器常用命令大全
  7. 基于Windows平台的Radius服务器搭建指南
  8. 学生请假管理系统(需求说明+项目(部分代码))
  9. ios-mfi_蓝牙部分翻译
  10. 这五个数据分析师技巧你一定要知道!