【Android】概述

本文详细介绍了Android操作系统,从其发展历程、与Linux和Java的关系,深入到Android的五层架构,包括Linux内核层、系统运行库层(包含程序库和Android Runtime)、应用框架层以及应用程序层。此外,还讲解了Android应用程序组件,如Activities、Services、Broadcast Receivers和Content Providers。最后,讨论了Android开发工具,包括JDK、Android SDK、Android Studio和Gradle的重要角色。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


一、Android 概述

Android是一个开源的,基于Linux的移动设备操作系统,主要使用于移动设备,如智能手机和平板电脑。Android是由谷歌及其他公司带领的开放手机联盟开发的。

Android 提供了一个统一的应用程序开发方法,这意味着开发人员只需要为 Android 进行开发,这样他们的应用程序就能够运行在不同搭载 Android 的移动设备上。

1、发展历程

谷歌在2007年发布了第一个测试版本的 Android 软件开发工具包(SDK),第一个商业版本的 Android 1.0,则发布于2008年9月。
2012年6月27日,在谷歌I/O大会上,谷歌宣布发布了 Android 版本4.1 Jelly Bean。 Jelly Bean 是一个在功能和性能方面的渐进的更新,主要目的是改进用户界面,

Android 源代码是根据自由和开放源码软件许可证。谷歌发布的大部分代码遵循 Apache 许可证2.0版,Linux 内核的变化遵循 GNU 通用公共许可证版本2。

Android历史各种已发布的版本名称:
在这里插入图片描述

2、Android与Linux、Java的关系

Android严格来说,不能算是Linux,Android是一个统称,具体来说,是Google用了Linux的一个核心,用这个核心来管理进程,控制硬件。

Android系统是以Linux系统为底层构建的,开源的Android系统需要配置到不同硬件配置的设备上,为了降低应用的开发难度,google利用java技术,在Linux底层之上构筑了一个名为"Dalvik"的虚拟机,名为虚拟机,实际是一种应用编译模式,给应用软件一个运行的平台Android4.4开始引入的ART模式是一种全新的应用编译模式,Android5.0彻底从Dalvik转换到ART。

Android上面的程序都是运行在Google提供的这个虚拟机上面,然后通过虚拟机和Linux发生关系,在和硬件发生关系

⭕️ java技术本来是SUN公司的,SUN有自己的标准(有用在手机上的,有用在服务器上的),但是Google感觉sun的方案限制太多,于是用java技术另外搞了一套,这个就是Android。

二、Android 架构

Android 操作系统是一个软件组件的栈,在架构图中它大致可以分为五个部分和四个主要层。
在这里插入图片描述

1、Linux Kernel (linux 内核层)

android系统是基于linux内核的,这一层为android设备的各种硬件提供底层的驱动,如显示驱动、音频频率、照相机驱动、蓝牙驱动、蓝牙驱动、wifi驱动、电影管理。

2、系统运行库层

1️⃣ Libraries(程序库)

在 Linux 内核层的上面是一系列程序库的集合,这一层通过一些C、C++库来为android系统提供了主要的特性支持。包括开源的 Web 浏览器引擎 Webkit ,知名的 libc 库,用于仓库存储和应用数据共享的 SQLite 数据库,用于播放、录制音视频的库,用于网络安全的 SSL 库等。

⭕️Android程序库

这个类别包括了专门为 Android 开发的基于 Java 的程序库。这个类别程序库的示例包括应用程序框架库,如用户界面构建,图形绘制和数据库访问。一些 Android 开发者可用的 Android 核心程序库总结如下:

  • android.app - 提供应用程序模型的访问,是所有 Android 应用程序的基石。
  • android.content - 方便应用程序之间,应用程序组件之间的内容访问,发布,消息传递。
  • android.database - 用于访问内容提供者发布的数据,包含 SQLite 数据库管理类。
  • an
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值