Andirod总体架构以及四大组件

本文是基于B站视频https://www.bilibili.com/video/BV1PE411u7ox?p=1的学习笔记。

一、Android总体架构图

1、Linux内核
  • Android平台的基础是Linux内核。首先,android runtime需要利用Linux内核来执行底层功能,如多线程管理,底层内存管理等。其次,基于Linux内核可以保证android平台的安全,android平台可以调用Linux内核的硬件设备驱动程序来使用硬件,等。
2、硬件抽象层
  • 硬件抽象层夹在android框架和Linux内核之间,主要达到了解耦的目的,让android平台不用直接与linux内核联系,而是通过硬件抽象层来提供硬件驱动程序。
3、Android RunTime
  • android runtime即安卓运行环境。手机上每一个app应用都一个独立进程,并且需要运行在android runtime之中,此外,android runtime是通过执行DEX文件来运行多个虚拟机的。其中,DEX文件是一种专门为android设计的字节码文件。而android应用都是基于java语言开发的,需要通过jack编译工具将java源代码转成DEX文件,然后该应用才能够在android runtime下运行。
4、原生C++/C库
  • android平台提供了原生C/C++库来实现2D或者3D绘图等功能。若android平台需要使用这些功能,可以使用android框架提供的java api来调用这些基于C/C++所写的功能。
5、Java Api框架
  • 可通过以 Java 语言编写的 API 使用 Android OS 的整个功能集。这
6、系统应用
  • android平台随附一套用于电子邮件、短信、日历、互联网浏览和联系人等的核心应用。系统应用可以作为用户的应用。

二、Android开发四大组件

1、活动(Activity)
  • Activity是最基本的模块之一,一个android应用是由多个Activty组成的。
2、服务(Service)
  • Service是没有界面的,只能在后台运行的,并且能够与其他组件交互的的组件。在手机中玩游戏时,后台运行的音乐app就是由Service来控制的。
3、广播接收器(BroadcastReceiver)
  • 广播接收器用于在应用之间传播信息。
4、内容提供者(Content Provider)
  • Content Provider可以用于访问第三方应用数据。android中每个应用的数据,文件都是无法直接相互访问的,只有通过Content Provider才能跨应用访问数据。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值