《Android 网络开发与应用实战详解》——1.4节Android模拟器

简介:

本节书摘来自异步社区《Android 网络开发与应用实战详解》一书中的第1章,第1.4节Android模拟器,作者 王东华,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.4 Android模拟器
Android 网络开发与应用实战详解
我们都知道程序开发需要调试,只有经过调试之后才能知道程序是否正确运行。作为一款手机系统,怎么样在能在计算机平台上调试Android程序呢?不用担心,谷歌提供了模拟器来解决此问题。所谓模拟器,就是指在计算机上模拟安卓系统,可以用这个模拟器来调试并运行开发的Android程序。开发人员不需要一个真实的Android手机,使用计算机就可以模拟运行一个手机,即可开发出应用在手机上面的程序。模拟器在计算机上模拟运行的效果如前面的图1-51所示。


e42472ed8fc4497b7f61c446d26647ef9aa3d4eb

1.4.1 Android模拟器简介
对于Android程序的开发者来说,模拟器的推出给开发者在开发上和测试上带来了很大的便利。无论在Windows下还是Linux下,Android模拟器都可以顺利运行,并且官方提供了Eclipse插件,可将模拟器集成到Eclipse的IDE环境。当然,也可以从命令行启动Android模拟器。

获取模拟器的方法非常简单,既可以从官方站点(http://developer.Android.com/)免费下载单独的模拟器,也可以先下载Android SDK后,解压后在其SDK的根目录下有一个名为“tools”文件夹,此文件夹下包含了完整的模拟器和一些非常有用的工具。

Android SDK中包含的模拟器的功能非常齐全,电话本、通话等功能都可正常使用(当然没办法真的从这里打电话)。甚至其内置的浏览器和Maps都可以联网。用户可以使用键盘输入,鼠标单击模拟器按键输入,甚至还可以使用鼠标单击、拖动屏幕进行操作。

1.4.2 模拟器和真机究竟有何区别
当然Android模拟器不能完全替代真机,具体来说有如下差异。

模拟器不支持呼叫和接听实际来电,但可以通过控制台模拟电话呼叫(呼入和呼出)。
模拟器不支持USB连接。
模拟器不支持相机/视频捕捉。
模拟器不支持音频输入(捕捉),但支持输出(重放)。
模拟器不支持扩展耳机。
模拟器不能确定连接状态。
模拟器不能确定电池电量水平和交流充电状态。
模拟器不能确定SD卡的插入/弹出。
模拟器不支持蓝牙。

1.4.3 模拟器简单总结
要正确地启动Android模拟器,必须先要创建一个AVD(Android Virtual Device虚拟设备),读者可以利用AVD创建基于不同版本的模拟器。有关创建和使用Android模拟器的知识请读者参考本书第二章中的知识。在此对Android模拟器的参数进行简单总结,其参数格式如下:

emulator [option] [-qemu args]
其中,option选项的具体说明如表1-2所示。


77617910ef3715ae583ec7bda28f809ee8316575


931142529b4e0f27df63e009f494aa98083cd7c4


7bb0231e732e5e661237c6a37d450fac7443f2c0


6240c15c0ff69933df695fec69ec153b7a2cfcd0


e3cda7c5b5cf4bd3a00883577d3b5197018389d8
相关文章
|
16天前
|
Java API 开发工具
如何将python应用编译到android运行
【6月更文挑战第27天】本文介绍在Ubuntu 20上搭建Android开发环境,包括安装JRE/JDK,设置环境变量,添加i386架构,安装依赖和编译工具。并通过`p4a`命令行工具进行apk构建和清理。
35 6
如何将python应用编译到android运行
|
6天前
|
Java 调度 Android开发
深入解析Android应用开发中的响应式编程与RxJava应用
在现代Android应用开发中,响应式编程及其核心框架RxJava正逐渐成为开发者的首选。本文将深入探讨响应式编程的基本概念、RxJava的核心特性以及如何在Android应用中利用RxJava提升代码的可读性和性能。 【7月更文挑战第7天】
|
3天前
|
开发者 Kotlin Android开发
Kotlin协程在Android开发中的应用
【7月更文挑战第10天】Kotlin协程简化了Android异步编程,提供轻量级并发。挂起函数让异步代码看起来同步,不阻塞线程,便于管理。在项目中,添加Kotlin和协程依赖,如`kotlinx.coroutines-core`和`kotlinx-coroutines-android`。使用`CoroutineScope`和`launch`处理耗时任务,如网络请求,避免主线程阻塞。挂起函数和调度器控制执行上下文,适应不同任务需求。
|
10天前
|
机器学习/深度学习 人工智能 文字识别
文本,文字扫描01,OCR文本识别技术展示,一个安卓App,一个简单的设计,文字识别可以应用于人工智能,机器学习,车牌识别,身份证识别,银行卡识别,PaddleOCR+SpringBoot+Andr
文本,文字扫描01,OCR文本识别技术展示,一个安卓App,一个简单的设计,文字识别可以应用于人工智能,机器学习,车牌识别,身份证识别,银行卡识别,PaddleOCR+SpringBoot+Andr
|
18天前
|
缓存 网络协议 安全
Android网络面试题之Http基础和Http1.0的特点
**HTTP基础:GET和POST关键差异在于参数传递方式(GET在URL,POST在请求体),安全性(POST更安全),数据大小限制(POST无限制,GET有限制),速度(GET较快)及用途(GET用于获取,POST用于提交)。面试中常强调POST的安全性、数据量、数据类型支持及速度。HTTP 1.0引入了POST和HEAD方法,支持多种数据格式和缓存,但每个请求需新建TCP连接。**
24 5
|
16天前
|
安全 网络协议 算法
Android网络基础面试题之HTTPS的工作流程和原理
HTTPS简述 HTTPS基于TCP 443端口,通过CA证书确保服务器身份,使用DH算法协商对称密钥进行加密通信。流程包括TCP握手、证书验证(公钥解密,哈希对比)和数据加密传输(随机数加密,预主密钥,对称加密)。特点是安全但慢,易受特定攻击,且依赖可信的CA。每次请求可能复用Session ID以减少握手。
24 2
|
17天前
|
缓存 网络协议 Android开发
Android网络面试题之Http1.1和Http2.0
HTTP/1.1 引入持久连接和管道机制提升效率,支持分块传输编码和更多请求方式如PUT、PATCH。Host字段指定服务器域名,RANGE用于断点续传。HTTP/2变为二进制协议,实现多工处理,头信息压缩和服务器推送,减少延迟并优化资源加载。HTTP不断发展,从早期的简单传输到后来的高效交互。
21 0
Android网络面试题之Http1.1和Http2.0
|
13天前
|
存储 Android开发
详细解读Android获取已安装应用信息(图标,名称,版本号,包)
详细解读Android获取已安装应用信息(图标,名称,版本号,包)
|
13天前
|
存储 Android开发
详细解读Android获取已安装应用信息(图标,名称,版本号,包)
详细解读Android获取已安装应用信息(图标,名称,版本号,包)
|
14天前
|
Android开发 开发者 UED
使用AlarmManager实现Android应用中的定时任务
使用AlarmManager实现Android应用中的定时任务