《Android开发秘籍(第2版)》——第1.4节Android设备间的硬件差异
本节书摘来自异步社区《Android开发秘籍(第2版)》一书中的第1章,第1.4节Android设备间的硬件差异,作者 【美】Ronan Schwarz , Phil Dutson , James Steele , Nelson To,更多章节内容可以访问云栖社区“异步社区”公众号查看
1.4 Android设备间的硬件差异
Android开发秘籍(第2版)
每一款Android设备上可用的硬件各不相同,这在表1-1中已有所反映。总体而言,多数差异对开发者而言是透明的,这里不深入讨论。然而,了解其中某些硬件差异有助于我们编写设备无关的代码。在此我们将探讨屏幕、用户输入法和传感器这几方面。
1.4.1 屏幕
液晶显示(LCD)和发光二极管(LED)是目前显示器使用的两种技术。在Android手机上,则分别体现为薄膜晶体管(TFT)液晶屏和主动矩阵有机发光二极管(AMOLED)屏。
TFT屏的一个优势是较长的寿命;而AMOLED的好处则在于无需背光,从而有更深的黑色和更低的能耗。
总的说来,Android设备可以依照屏幕尺寸被分为小、中、大、超大,或按像素密度分为低、中、高、极高几类。注意,实际的像素密度可能多种多样,但总可以被归为低、中、高、极高中的某一种。表1-3给出了典型的屏幕尺寸、分辨率及一些与屏幕尺寸有关的名称。
1.4.2 用户输入法
触摸屏使得用户可以与视觉显示进行互动。目前有三种类型的触屏技术。
电阻屏:在玻璃屏幕的上层覆盖两层电阻材料层。当手指、手写笔或其他物体施压时,两层电阻材料发生接触,而触点可以被确定。电阻屏性价比高,但透光率只能达到75%,并且最近才实现多点触摸。
电容屏:玻璃屏上覆盖有一层带电材料。当手指或其他导体与该层接触,一些电荷被释放,引起电容变化,从而可检测出触点所在。电容屏透光率可达90%,但精确度不如电阻屏。
表面声波:这是一种靠发送和接收超声波来定位的先进技术。当手指或其他物体接触屏幕时,引起的声波被吸收和测量,从而确定触点。这是一种最为经久耐用的解决方案,但更适合诸如银行自动柜员机一类的大尺寸的屏幕。
目前绝大多数的Android设备要么采用电阻屏,要么采用电容屏技术,并且均支持多点触摸。此外,Android设备还可能采用下列某种替代性的屏幕访问方法。
十字键(D-Pad):一种上下左右型的控制杆。
轨迹球(Trackball):一种使用滚动球定位的指针设备,与鼠标类似。
触摸板(Trackpad):用一块特殊的方形表面来定位的指针设备。
1.4.3 传感器
在某种程度上,智能手机正在成为一个传感器的集合体,带给用户丰富的体验。除每部手机都必备的麦克风外,首先被引入手机的附加传感器要属摄像头。不同的手机摄像头在性能上大相径庭,这已成为人们选择手机时的一个重要考虑因素。类似多样性也体现在其他的附加传感器上。
多数智能手机至少包含以下三种基本的传感器:用于测量重力的三轴加速度计(accelerometer)、用于测量周围磁场的三轴磁力计(magnetometer),以及用于测量周边温度的温度传感器。例如,HTC Dream(G1)包含下列传感器(可以通过调用getSensorList()函数列出它们,这将在第9章中进一步讲述)。
AK8976A三轴加速度计。
AK8976A三轴磁场传感器。
AK8976A方向传感器。
AK8976A温度传感器。
AK8976A是出自旭化成微系统公司(Asahi Kasei Microsystems,AKM)的传感器包,整合了压阻式加速度计、霍尔效应磁力计及温度传感器。这些传感器都提供8位精度的数据。方向传感器则是一个虚拟传感器,实际是组合使用加速度计和磁力计来测定方向。
作为对比,我们看看摩托罗拉Droid手机采用的传感器。
LIS331DLH三轴加速度计。
AK8973三轴磁场传感器。
AK8973温度传感器。
SFH7743近距离传感器。
方向传感器。
LM3530光传感器。
LIS331DLH是来自意法半导体公司(ST Microelectronics)的12位电容式加速度计,它提供更为精确的数据,并且采样频率可达1 kHz。AK8973是一个AKM传感器包,包含8位霍尔效应磁力计及温度传感器。
此外,Droid还包含另两个传感器。SFH7743是光电半导体的短程近距离传感器,可在约40 mm距离范围内有物体(比如耳朵)存在时关闭屏幕。LM3530是美国国家半导体公司(National Semiconductor)生产的带有可编程光传感器的LED驱动器,可以检测周围光线并据此将屏幕背光和LED闪光灯调节到适当亮度。
关于Android设备上可用的传感器我们再举一例,即HTC EVO 4G,它含有下列传感器。
BMA150三轴加速度计。
AK8973三轴磁场传感器。
AK8973方向传感器。
CM3602近距离传感器。
CM3602光传感器。
BMA150是博世传感器公司(Bosch Sensortec)生产的10位加速度计,采样率可达1.5 kHz。CM3602则是Capella微系统公司生产的短程近距离传感器和环境光传感器的二合一产品。
总体而言,理解不同的Android设备拥有不同的底层硬件是很有必要的,这些不同会导致性能和传感器精度的差异。
《Android开发秘籍(第2版)》——第1.4节Android设备间的硬件差异相关推荐
- Android开发秘籍 第2版
iOS传感器应用开发最佳实践_PDF电子书下载 带书签目录 完整版http://pan.baidu.com/s/1dDtSP2L Node应用程序构建 使用MongoDB和Backbone_PD ...
- 应用程序基础知识:activity和intent——Android开发秘籍
应用程序基础知识:activity和intent --Android开发秘籍 v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#defaul ...
- Android 开发规范(完结版)
点击上方蓝字关注公众号 码个蛋第270次推文 长文干货 作者:Blankj 博客:https://www.jianshu.com/u/46702d5c6978 文章目录 前言 AS 规范 命名规范 代 ...
- 001 初学android开发,从搭建环境开始(jdk+eclipse+android sdk+windows7)
001 初学android开发,从搭建环境开始(jdk+eclipse+android sdk+windows7) 毕业就一直从事.Net开发,之后做管理,做产品设计,疏于编码. 最近打算买个小米手机 ...
- Android开发经验谈-很少有人会告诉你的Android开发基本常识,经验谈android
转载:http://www.android100.org/html/201507/15/165084.html Android开发经验谈-很少有人会告诉你的Android开发基本常识,经验谈andro ...
- android工程师饱和,Android开发是否饱和了?你所不了解的Android开发
原标题:Android开发是否饱和了?你所不了解的Android开发 Android开发是否饱和了?是很多人关心的问题,对于想要从事Android开发的人更是头等大事.如今,就业难成横亘在求职者面前的 ...
- 《ArcGIS Runtime SDK for Android开发笔记》——(8)、关于ArcGIS Android开发的未来(“Quartz”版Beta)...
1.前言 今天再一次在官网看到了ArcGIS Runtime SDK for Android下一个版本"Quartz"版的更新资料,它将是一个非常重要的更新,包括API接口的重构和 ...
- android开发笔记之2012版辅助开发工具包(ADT)新功能特性介绍及安装使用
原文链接:http://android.eoe.cn/topic/android_sdk 2012年的Android辅助设备开发工具包(ADK)是Android开放设备协议(AOA)设备的最新参考实现 ...
- 阿里巴巴Android开发手册(正式版)
去年有个阿里巴巴java开发手册,今年有了Android了.. 下载链接: 阿里巴巴Android开发手册
最新文章
- Codeforces Round #253 (Div. 1) A. Borya and Hanabi 暴力
- 皮一皮:直男的拍摄水平...
- android 浅复制与深复制
- ASP.NET2.0中themes、Skins轻松实现网站换肤!
- Linux驱动:VFIO概述(vfio/iommu/device passthrough)
- 浙大 PAT a1058
- 深度学习TF—8.经典CNN模型—LeNet-5、VGG13、AlexNet、GoogLeNet、ResNet、DenseNet
- JAVA怎么创建被继承的类_Java入门之类的继承
- Python:利用python语言实现18位身份证号码和15位身份证号码相互转换
- c语言顺序结构编程题及其答案,C语言编程 顺序结构编程练习题目
- 链表?数组?合二为一
- 关于bios+mbr还原uefi+gpt的系统后,出现进不去系统的问题
- sql语句date函数
- 跨链桥:用零知识证明桥接多链宇宙
- Android中计步器的实现
- HIbernate Lazy 常用配置
- 自动批量处理人像照片
- 唐杰:悟道的雄心,何止是万亿参数模型
- 记录:微信小程序Switch样式调整
- 2020大学生网络安全知识总决赛 NISP一级模拟题(07)