Android学习笔记
初识Android
Android系统架构
1. Linux内核层
Android系统是基于Linux2.6内核的,这一层为Android设备的各种硬件提供了底层的驱动,包括显示驱动、音频驱动、照相机驱动、蓝牙驱动、Wi-Fi驱动、电源管理、闪存驱动、Binder Driver、USB驱动、键区驱动。
2. 系统运行层库
这一层通过一些C/C++库来为Android系统提供了主要的特性支持。如SQLite库提供了数据库的支持,OpenGL|ES库提供了3D绘图的支持等。
同样在这一层还有Android RunTime Libraries(运行时库)。主要提供一些核心库,能够允许开发者使用Java语言来编写Android应用。其中还包含Dalvik虚拟机,这个虚拟机是专门为移动设备定制的,针对手机内存、CPU性能有限等情况做了优化处理。
3. 应用框架层
这一层主要提供了构建应用程序是可能用到的各种API(Application Programming Interface,应用程序接口),Android自带的一些核心应用就是使用这些API完成的,也允许开发者使用这些API来构建自己的应用程序。包括:活动管理、窗口管理、组件提供、视图系统、包管理、资源管理、定位管理等。
4. 应用层
所有安装在手机上的应用程序都是属于这一层的,比如系统自带的联系人、短信等程序。
Android应用开发特色
1. 四大组件
活动(Activity):所有Android应用程序的门面,在应用中使用者所看到的东西都是放在活动中的。
服务(Service):用户无法看到,运行于后台,即使用户退出了应用,服务仍然可以继续运行。
广播接收器(Broadcast Receiver):允许应用接收来自各处的广播信息,如电话、短信等,也可以向外发出广播消息。
内容提供器(Content Provider):为应用和应用之间共享数据提供了可能,如读取系统电话薄中的联系人等。
2. 丰富的系统控件
Android系统为开发者提供了丰富的系统控件,使得开发者可以编写出漂亮的界面,也允许开发者自定义出属于自己的控件。
3. SQLite数据库
SQLite数据库是一种轻量级、运行速度快的嵌入式关系型数据库。不仅支持标准的SQL语法,还能通过Android封装好的API进行操作,让存储和读取数据变得非常方便。
4. 地理位置定位
现在Android手机设备都内置有GPS,可以使用地理位置定位功能做出功能强大的应用程序。
5. 强大的多媒体
Android提供了丰富的多媒体服务,如音乐,视频、录音、拍照、闹铃等。可以使得应用程序更加丰富多彩。
6. 传感器
Android手机中都会内置多种传感器,如加速度传感器、方向传感器等,这也是移动设备的一大特点。通过灵活应用这些传感器,可以实现很多PC端无法实现的功能。
刚开始学习Android,记下些笔记
书籍《第一行代码Android》