Android系统介绍

Android系统介绍

Android体系结构

Android分为四层,从高层到底层:应用程序层、应用程序框架层、系统运行层、Linux内核层。

应用程序层

系统核心应用程序和用户安装的程序。例如:日历、邮箱、地图、浏览器

应用程序框架层

应用程序框架层向开发人员提供构建应用程序时用到的各种API。

系统运行层

Android包含一些C/C++库,被Android系统中不同的组件使用。

核心库:

1)系统C库:从BCD继承来的标准C系统函数库Libc。

2)媒体库:基于PacketVideo OpenCODE,支持多种常用的音频、视频格式回放和录制,同时支持静态图像文件。

3)SurfaceManager:对显示子系统的管理,并且为多个应用程序提供了2D和3D图层的无缝融合。

4)Webkit/LibWebCore:Web浏览引擎,支持Android浏览器和一个可嵌入的Web视图。

5)SGL:底层的2D图形引擎。

6)3D libraries:基于OpenGL ES 1.0APIs实现的3D引擎。

7)FreeType :位图和矢量字体显示。

8)SQLlite:轻型关系型数据库引擎。

(1)Android核心库:提供了Java库的大多数功能。

(2)Dalvik虚拟机:Dalvik采用简练、高效的byte code格式运行,能够在低资耗和没有应用互相干扰的情况下并行执行多个应用,每个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。

Linux内核层

Android的核心系统服务基于Linux内核。

Android四大组件

Activity(活动):用于表现功能

Activity是Android中最基本和最常用的组件,是一个负责与用户进行交互的组件,Activity中所有操作与用户密切相关。

通俗来说,是用户界面。一个应用程序包含多个Activity。

需要在AndroidManifest.xml中进行声明。

Serive(服务):后台运行服务

Serive是一个没有用户界面,可以在后台运行执行耗时操作的应用组件。

启动方式:1)绑定式

​ 2)独立启动式

BroadcastReceiver(广播接收器):

BroadcastReceiver是一种广泛运用的在应用程序之间传输信息的机制。BroadcastReceiver是对发送出来的Broadcast进行过滤接收并响应的一类组件。使用BroadcastReceiver可以方便实现全局监听,完成不同组件之间的通信。

没有用户界面,但可启动Activity或用NotificationManager来通知用户。

ContentProvider(内容提供器):

ContentProvider是Android提供的第三方应用数据的访问方案。

ContentProvider支持多个应用程序的数据共享,是跨应用共享数据的唯一方法。

Android程序结构

1、app文件夹:

​ 这是工程产生后,AndroidStudio自动创建的module所在文件夹,应用程序的源代码和资源文件就放在这个module当中。

2、build:

​ 编译后的文件存放的位置,最终生成的.apk文件就在这个目录下。

3、libs:

​ 添加的 *.jar 或 *.so 等文件存放位置。

4、src文件夹里有三个文件夹:

​ 1)androidTest:

​ 2)main:

​ (1)java:Java源代码

​ (2)res:资源文件

​ drawable:存储图片和xml文件,*dpi表示存储分辨率的图片,用于适配不同的屏幕。

​ layout:存储布局文件

​ mipmap:存储原生图片资源,缩放时有性能优化

​ values:存储APP引用的一些值。

values文件下:

  • colors.xml :存储了一些color样式
  • dimens.xml:存储了一些公用的dp值
  • strings.xml:存储了引用的string值
  • styles.xml:存储了App需要用到的一些样式

​ AndroidManifest.xml是整个项目的配置文件,描述了当前应用的package中提供的各种组件的实现类以及各种能被处理的数据和启动位置。

​ 程序中定义的组件(Activity、Service、ContentProvider、BroadcastReceiver)需要在AndroidManifest.xml文件中注册后才能使用。

​ 3)test:

androidTest和test存放和测试有关的内容。

​ build.gradle文件:是module编译时的配置文件。

猜你喜欢

转载自blog.csdn.net/leilei__66/article/details/108886542
今日推荐