文章目录
序
一直想系统的总结一下Android的学习,从浅入深,循序渐进的,对自己目前做一个知识的梳理,明确自己的知识学习体系,为后续拓展体系明确方向,而不是学了新的忘记了旧的,也为以后面试复习的时候提供一个靠谱的知识库。最近,打算坚持看书,做好读书笔记,首先从最基础的郭霖的《第一行代码》开始。
一、Android系统架构
Android系统架构大致可以分为4层5块。Linux内核层,系统运行库层,应用框架层,应用层。
1,Linux内核层
Android系统是基于Linux内核的,这一层为Android设备的各种硬件提供了底层的驱动,如显示驱动,音频驱动,相机驱动,蓝牙驱动,WiFi驱动等等。
2,系统运行库层
这一层通过一些C/C++库来为Android系统提供了主要的特性支持。如SQLit库提供了数据库的支持,OpenGL|es库提供了3d绘图支持,webkit库提供了浏览器内核的支持。
这一层还有一个Android运行时库,主要提供了一些核心库,能够允许开发者使用java语言来编写Android应用。另外,Android运行时库还包含了dalvik虚拟机(5.0之后为art运行环境),它使得每一个Android应用都能够运行在独立的进程当中,并且拥有一个自己的dalvik虚拟机实例。
3,应用框架层
这一层主要提供了构建应用程序时可能用到的各种API。
4,应用层
所有安装在手机上的应用程序都属于这一层。
参考博客,https://www.jianshu.com/p/69f0d25c727a
二,Android应用开发工具组件
Android提供了那些东西可供使用,来开发出优秀的应用程序?
1,四大组件
Android系统四大组件,活动Activity,服务Service,广播接收器Broadcast Reciver,内容提供器Content Provider。其中活动是所有Android应用程序的门面,凡是在应用中看得到的东西都是放在活动中的。服务一直在后台默默运行,机试用户退出了应用,服务任然可以继续运行。广播接收器允许你的应用接收来自各处的广播消息,比如电话,短信等,当然你的应用也可以向外发出广播消息。内容提供者为应用程序之间共享数据提供了可能,如你想要读取系统电话本中的联系人,就需要通过内容提供者来实现。
2,系统控件
系统控件和自定义控件。
3,sqlite数据库
支持标准SQL语法,通过Android封装好的API进行操作,让存储和读取数据变得非常方便。
4,多媒体服务
音乐,视频,录音,拍照,闹铃等等。
5,地理定位
手机内置GPS,可以定位。
三,开发环境
话不多说,Android studio。
当前的版本号。

四,项目目录结构分析
先看一张图

默认as是这样的目录结构,但这并不是真实的项目结构,而是被as转换过的,这个结构简单明了,适合快速开发。可以切换到其他模式下查看目录,project下才是真实的目录结构。

切换到project下分析一下每个文件是什么负责功能的。


project下最外层的目录
1,.gradle和.idea
这两个目录下放置的都是as自动生成的一些文件,无需关心,不需要手动编辑。
2, app
项目的代码,资源等内容几乎都放在这个目录下,开发工作基本上都是在这个目录下进行的。稍后详细分析。
3,build
这个目录主要包含一些在编译时自动生成的文件,也无需关心。

本文详细介绍了Android系统架构的四个层次,包括Linux内核层、系统运行库层、应用框架层和应用层。同时,深入解析了Android应用开发工具组件,如四大组件、系统控件、数据库等。此外,还分析了Android Studio的项目目录结构,从project目录到app目录下各个文件夹的作用,并解释了build.gradle文件的重要性及其配置。最后,探讨了资源管理和逻辑与视图的分离原则。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



