Android 小白基础知识总结

市场占比

Android 1.1 在 2009 年 2 月发布,然后就以直线上升的速度,迅速占领手机操作系统市场。如今 Android 已经成为和 iOS 有同等分量的手机操作系统,二者一同霸占了全球市场。下图是 2018 年 3 月份,全球知名研究公司 Gartner 公司给出的全球手机操作系统占比报告:

image.png
网络技术

Android 系统和 iOS 系统都是伴随着移动通讯革新的历史,顺势发展而来。而在 1G/2G 时代,诺基亚是全球手机市场的老大。我们经常听到的手机支持 xG 。其中 G 是 GPRS 的省略, 英文为 General Packet Radio Service ,翻译成汉语意思为通用分组无线服务技术。简单理解就是不同的网络传输技术。

网络向着速度越来越快的方向发展,这些都需要不同的技术和标准来实现。下图简要列举移动通讯发展中采用的技术历史:


image.png

从传输速度上面能看到,每一次的技术革新,网络速度都会大大提升。网上有一副图,形象的概括了不同技术下的网络速度差别。


image.png
Android 起源

Android 的发明人是 Andy Rubin。Andy Rubin 早年供职于苹果公司,算是一个机器发烧友,不仅能拿电焊机焊电路板,而且热爱编程,有乔布斯般的偏执。当年他为了开发 Android 系统,先花光了以前积累的百万财富,接着又把房子抵押出去,最后走投无路时,找到了 Google 的大当家佩奇。佩奇经过详细了解后,出资 5000 万美元买下了 Android 系统,并且继续让 Andy Rubin 负责 Android 系统的开发。Andy Rubin 不负众望,在苹果 4 问世之后的第 2 年,也就是 2009 年,推出了第一版 Android 系统。他本人也被称为安卓之父

Android 每一个版本都有一个名字,全部和吃有关,或许 Google 里面的员工也都是吃货吧。下面是 Android 不同版本的名字:


image.png
Android 整体架构

Android 架构从上往下可以分为 5 层。最底层采用开源的 linux 内核,最上层是 Applications 。作为一名 Android 开发者,常用到的是顶层的Applications 。

Android 采用 java 语言。在运行在设备上是,首先需要虚拟机对 java 语言进行解释,编译。这也是 Android 手机在流畅度方面始终落后于 iOS 的原因。为了弥补缺陷,Google 对 JVM 进行了优化,推出了 Dalvik VM 技术。它可以让 java 编译过程由 java byte -> vm 优化为 java byte -> dex compiler -> Dalvik byte(优化) -> Dalvik VM (优化)

image.png

手机 CPU 厂商、架构和指令集分类

CPU 是手机指令运行的核心,可以看做手机的大脑。PC 机上的龙头是 Intel,它基本上垄断了整个 PC 行业。现在手机市场,比较常见的 CPU 有以下几家:


image.png

从表格中可以明显看出,中国 CPU 厂商有展讯、联发科和华为三家,但是其总和的市场份额,都抵不上高通一家。中兴通讯采用的 CPU 就有大部分来自高通,这也是中国受制于美国的原因之一。

CPU 诞生在上世纪 70 年代,近 40 年的发展,诞生了很多架构,比如x86、ARM、MIPS、IA64等。绝大多数手机端的 CPU 采用 ARM 架构,而不是统治 PC 端 Intel 的 x86 。造成这个结果的原因和它们采用的指令集有关。

指令集是 CPU 能够识别的命令集合。所有的 CPU 指令集可以分为两种:RISC (Reduced Instruction Set Computer) 和 CISC (Complex Instruction Set Computer)。RISC 翻译成中文是精简指令集,被现在的ARM 架构采用;CISC 表示复杂指令集,由 intel 的 x86 架构采用。

RISC 指令集删除了 CISC 中不常用的指令集,而且对一些容易的指令集进行整合,具有较高的运行效率。早期 Intel 公司的 x86 绑定了微软的 windows 操作系统,而且一直采用向下兼容的方式,完全符合用户的习惯,后面依靠惯性一直前行到今天。但是在新兴的手机端,RISC 效率高的优势就体现出来了。RISC 基本成为了手机 CPU 默认指令集。

ADB 常用命令

ADB 是 Android Debug Bridge 的简称,也就是 Android 手机调回桥的意思。 ADB 仿佛是手机的遥控器,能够对手机上的各种配置和文件进行更改和删减。常用的 ADB 命令有:

1 adb devices : 查看手机设备数量
2 adb start-server :开启 adb 服务
3 adb kill-server :关闭 adb 服务
4 adb logcat  :查看手机日志 
5 adb shell :进入手机系统
6 adb install :安装应用程序
7 adb uninstall :卸载应用程序
8 adb pull: 将文件下载到特定目录 
9 adb push :将文件放到手机中
Android 常用 4 大布局
1 线性布局:可以相互嵌套
2 相对布局: 所有的控件都是相对方式排列
3 表格布局
4 帧布局
5 约束布局
Android 尺寸单位

1 px 像素值,指实际像素数。例如我们经常看到的手机分辨率是 1080 x 1920 ,单位就是像素。

2 dp /dip :dp 是 dip 的简称 ,全称是 density independent pixels , 表示屏幕密度无关的像素。它代表手机屏幕实际的显示点,而每个点的像素数却不同。好屏幕,每个点的像素数多,图像较清晰;差的屏幕,每个点像素数少,图像就较模糊。开发中多采用此单位作为空间尺寸。

3 sp:用于文本字体大小。当用户修改设备字体大小时,文字会自动适配。

以上是 Android 入门的基础知识,包括 Android 的起源历史、和苹果的市场关系,以及手机系统采用 CPU 的知识。后面介绍了 Android 开发需要掌握的布局概念和尺寸单位。大视角看到的都是见闻,后面的小视角才是开发者最长接触的技术。既然入坑,以后就要用细挖掘,用心寻找底部的知识源泉。同行的小伙伴,你在哪里?

喜欢和关注都是对我的鼓励和支持~
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 177,007评论 25 709
  • 从Intel和ARM争霸战,看看做芯片有多难 这几天中兴事件持续发酵以来,各种议论纷纷扰扰。但我触动最大的,还是碧...
    torvaldsing阅读 56,951评论 20 131
  • 炒股技巧图解 最简单实用的选股方法 均线选股 均线的金叉与死叉。短线操作一般要参照短期均线组合5日、10日、20日...
    捉牛股阅读 3,843评论 0 1
  • 也许人长得瘦小,为了增加安全感,开车也喜欢开大车,05年高考结束,送走了第一届学生,拿了一大笔高考奖金,去驾校...
    都市夜行人阅读 2,662评论 0 0
  • 【读经】 诗篇23-24 【金句】 耶和华是我的牧者,我必不致缺乏。(诗篇 23:1 和合本) 【感动】 这是美好...
    chanor阅读 1,531评论 0 0

友情链接更多精彩内容