KDDA: Keep Da Dream Alive!
本书被广大的Android开发者誉为“Android开发第一书”,系统介绍了Android开发的必备知识、经验和技巧。
源码地址:github.com/guolindev/b….
写此文的视角为android入门的我,在大概读完一遍,并跟随书中代码写了一遍运行了文中大多数案例之后。重读一遍本书,并写下本文以作笔记,巩固自己的android应用层开发基础,为后续能更深入到更深层次层面打好基础。
走得慢一点,走得稳一点。
Android操作系统
系统架构
作为开发者,要在Android操作系统上开发应用,必须了解整个操作系统的架构组成。
- Linux内核层:Android系统是基于Linux内核的,这一层为Android设备的各种硬件提供了底层的驱动,如显示驱动、音频驱动、照相机驱动、蓝牙驱动等等。
插播:什么是驱动,如何理解驱动? 驱动是操作系统与计算机硬件之间的中介,是指驱使计算机里硬件动作的软件程序。软件不能直接操作硬件设备(安全性考量),操作硬件设备得通过驱动这个中介。
- 系统运行时库:一些C/C++库,为Android系统提供支持,如SQLite。这一层还有AndroidRuntime运行时库,包含了Dalvik(5.0后更改为ART)(类似JVM),Dal使得每一个Android应用都能运行在独立的进程中,并且拥有自己的Dal实例。
- 系统框架层(FrameWork):为应用程序提供API。(有许多企业提供构建Framework层的岗位)
- 应用层:写的App