这是我参与「第四届青训营 」笔记创作活动的的第33天
学习了这么多天的android客户端,我也跟着老师学到了很多东西,但是我觉得一切都要回归到最初的一节课,什么是客户端,什么是安卓系统。
什么是客户端
在移动互联网的世界,人们了解世界的方式,大多是通过互联网,主要手段是手机和APP的媒介,APP为人们提供各种有用的信息,表面上看好像是人与机器在交互,实际上,是人与APP背后的客户端开发人员在交互,客户端负责把用户需要的信息从服务器端获取然后再呈现给用户,所以,人与软件交互,实际上是人与人在交互,而客户端是一个媒介,充当了人与服务器之间的非常高效的媒介。
但是客户端不是单纯意义上的人与服务端的桥梁,客户端善于发现用户需求,主动为用户搭建用户连通服务端的桥梁。
交付
对外 - 为用户创造价值 第一层交付: 页面+逻辑+数据
这层交付是最基本的,需要给用户展示良好的页面,提供符合预期的逻辑功能,并且获取和展示数据。
我和队友合作只实现了这一步,后面的第二层交付,第三层交付就不太懂了。
认识安卓系统
安卓平台架构图
1.系统应用层
安卓系统最上层是系统应用层 自己开发的APP,和系统自带的APP都在这一层
2、 Java ****API 层
这层就是Android Framework提供给开发者的接口,我们可以基于这些接口打造各自的App。
3、原生 C/C++层
一些核心的系统服务和组件是用C/C++写的。
4、Android Runtime
这一层就会涉及虚拟机的知识,在一层会把DEX字节码进行编译,优化执行效率。在一层我们可以做一些体验相关的优化,让代码运行更高效。所需要的技术门槛也就更高一些。
5、硬件抽象层 (HAL)
主要提供硬件组件的封装,包括相机、传感器和蓝牙等。
6、Linux 内核
Android 平台的基础是 Linux 内核。