前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Android-系统架构

Android-系统架构

作者头像
tea9
发布于 2022-07-16 08:58:05
发布于 2022-07-16 08:58:05
4150
举报
文章被收录于专栏:tea9的博客tea9的博客
  1. Linux 内核层 Android 系统是基于 Linux 2.6 内核的,这一层为 Android 设备的各种硬件提供了底 层的驱动,如显示驱动、音频驱动、照相机驱动、蓝牙驱动、Wi-Fi 驱动、电源管理等。
  2. 系统运行库层 这一层通过一些 C/C++库来为 Android 系统提供了主要的特性支持。如 SQLite 库提 供了数据库的支持,OpenGL|ES 库提供了 3D 绘图的支持,Webkit 库提供了浏览器内核 的支持等。 同样在这一层还有 Android 运行时库,它主要提供了一些核心库,能够允许开发者 使用 Java 语言来编写 Android 应用。另外 Android 运行时库中还包含了 Dalvik 虚拟机, 它使得每一个 Android 应用都能运行在独立的进程当中,并且拥有一个自己的 Dalvik 虚 拟机实例。相较于 Java 虚拟机,Dalvik 是专门为移动设备定制的,它针对手机内存、 CPU 性能有限等情况做了优化处理。
  3. 应用框架层 这一层主要提供了构建应用程序时可能用到的各种 API,Android 自带的一些核心 应用就是使用这些API完成的,开发者也可以通过使用这些API来构建自己的应用程序。
  4. 应用层 所有安装在手机上的应用程序都是属于这一层的,比如系统自带的联系人、短信等 程序,或者是你从 Google Play 上下载的小游戏,当然还包括你自己开发的程序。
  5. 四大组件 Android系统四大组件分别是活动(Activity)、服务(Service)、广播接收器(Broadcast Receiver)和内容提供器(Content Provider)。其中活动是所有 Android 应用程序的门面, 凡是在应用中你看得到的东西,都是放在活动中的。而服务就比较低调了,你无法看到 它,但它会一直在后台默默地运行,即使用户退出了应用,服务仍然是可以继续运行的。 广播接收器可以允许你的应用接收来自各处的广播消息,比如电话、短信等,当然你的 应用同样也可以向外发出广播消息。内容提供器则为应用程序之间共享数据提供了可 能,比如你想要读取系统电话簿中的联系人,就需要通过内容提供器来实现。
  6. 丰富的系统控件 Android 系统为开发者提供了丰富的系统控件,使得我们可以很轻松地编写出漂亮 的界面。当然如果你品味比较高,不满足于系统自带的控件效果,也完全可以定制属于 自己的控件。
  7. SQLite 数据库 Android 系统还自带了这种轻量级、运算速度极快的嵌入式关系型数据库。它不仅支持标准的 SQL 语法,还可以通过 Android 封装好的 API 进行操作,让存储和读取数据 变得非常方便。
  8. 地理位置定位 移动设备和 PC 相比起来,地理位置定位功能应该可以算是很大的一个亮点。现在 的 Android 手机都内置有 GPS,走到哪儿都可以定位到自己的位置,发挥你的想象就可 以做出创意十足的应用,如果再结合上功能强大的地图功能,LBS 这一领域潜力无限。
  9. 强大的多媒体 Android 系统还提供了丰富的多媒体服务,如音乐、视频、录音、拍照、闹铃等等, 这一切你都可以在程序中通过代码进行控制,让你的应用变得更加丰富多彩。
  10. 传感器 Android 手机中都会内置多种传感器,如加速度传感器、方向传感器等,这也算是 移动设备的一大特点。通过灵活地使用这些传感器,你可以做出很多在 PC 上根本无法 实现的应用。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
为什么Java中只有值传递【详解】
这里,我们可以清晰地看出x的值在函数执行前后没有发生改变,函数对形参的任何操作,不影响实参;
訾博ZiBo
2025/01/06
760
为什么Java中只有值传递【详解】
Java 02 - 值传递与引用传递
首先我们要知道, 值传递和引用传递是一种求值策略(Evaluation Stragtegy), 表示的是调用函数的时候, 对于参数传递方式的描述, 而不是对参数本身类型的描述. 值类型和引用类型是两种内存分配方式, 值类型是在调用栈上分配, 而引用类型是在堆上分配. 一个是描述的内存分配方式, 一个是描述参数求值策略, 二者并无依赖和约束关系.
Reck Zhang
2021/08/11
7740
Stack Overflow上188万浏览量的提问:Java 到底是值传递还是引用传递?
在逛 Stack Overflow 的时候,发现了一些访问量像阿尔卑斯山一样高的问题,比如说这个:Java 到底是值传递还是引用传递?访问量足足有 188万+,这不得了啊!说明有很多很多的程序员被这个问题困扰过。实话实说吧,我就是其中之一。
沉默王二
2019/11/28
5490
说说Java到底是值传递还是引用传递
首先,我们必须要搞清楚,到底什么是值传递,什么是引用传递,否则,讨论 Java 到底是值传递还是引用传递就显得毫无意义。
沉默王二
2020/04/23
4610
说说Java到底是值传递还是引用传递
一文读懂 Python 值传递和引用传递
👋 你好,我是 Lorin 洛林,一位 Java 后端技术开发者!座右铭:Technology has the power to make the world a better place.
Lorin 洛林
2024/02/26
2.4K9
一文读懂 Python 值传递和引用传递
值传递OR引用传递?大部人都答错了!
Java 是值传递还是引用传递?这是 Java 中比较基础的一道常见面试题,但对于这道问题的大部分答案都是错的,大部人会这样回答这个问题:
磊哥
2024/09/05
600
值传递OR引用传递?大部人都答错了!
多图证明,Java到底是值传递还是引用传递?
开篇先来曝答案,在 Java 语言中,本质只有值传递,而无引用传递,解释和证明详见正文。
Bug开发工程师
2021/01/28
6380
多图证明,Java到底是值传递还是引用传递?
为什么大家都说Java中只有值传递?
最近跟Java中的值传递和引用传递杠上了,一度怀疑人生。查了很多资料,加上自己的理解,终于搞清楚了,什么是值传递和引用传递。也搞明白了,为什么大家都说Java只有值传递,没有引用传递。原来,我一直以来的认知都是错误的。。。
烟雨星空
2020/06/16
1.6K0
解惑4:java是值传递还是引用传递
曾经纠结了很久java的参数传递方式是什么样的,后面粗略的了解了一鳞半爪以后有了大概的印象:“传参数就是值传递,传对象就是引用传递”,后面进一步查找了相关资料和文章以后,发现这么理解是不正确的。
全栈程序员站长
2022/09/23
6550
解惑4:java是值传递还是引用传递
Java 值传递与引用传递
以下是包含引用的完整博客文章,以markdown格式输出,附带“Java 只有值传递”的相关参考来源。
井九
2024/10/12
1890
Java 值传递与引用传递
图说Java值传递原理
Java是一门面向对象的程序设计语言,类是其基本抽象单元,而方法是类中可复用的执行单元;当一个Java方法被调用,方法参数的传递方式究竟是基于值传递还是引用传递呢?答案是:值传递 !
程序猿杜小头
2022/12/01
4870
图说Java值传递原理
Java真的只有值传递?
值传递(pass by value)是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数。
一觉睡到小时候
2019/07/02
7080
Java真的只有值传递?
Java中真的只有值传递么?
关于这个问题应该是存在争议的。根据测试出来的结果和我们自己的经验,以及口口相传或是上学时老师讲的,我们认为是第一种。但第二种说法的呼声也很高,渐渐地我们也认为第2中才是对的。那么下面我们就来分析一下这个问题。
编程大道
2020/02/11
1.2K0
这一次,让你彻底理解Java的值传递和引用传递!
学过Java基础的人都知道:值传递和引用传递是初次接触Java时的一个难点,有时候记得了语法却记不得怎么实际运用,有时候会的了运用却解释不出原理,而且坊间讨论的话题又是充满争议:有的论坛帖子说Java只有值传递,有的博客说两者皆有;这让人有点摸不着头脑,下面我们就这个话题做一些探讨,对书籍、对论坛博客的说法,做一次考证,以得出信得过的答案。
Java团长
2019/06/26
8880
这一次,让你彻底理解Java的值传递和引用传递!
Java值传递与引用传递
Java面试题: 当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?   答案基本上是:值传递 说明:得出这种结论的前提必须是
阳光岛主
2019/02/19
1.1K0
每天一个Java面试题之为什么 Java 只有值传递
在编程语言中,参数传递的方式主要有两种:值传递和引用传递。值传递是指将实际参数的值复制一份传递到函数中,而引用传递则是将实际参数的地址传递到函数中。Java,作为一种广泛使用的编程语言,采用的是值传递方式。本文将深入探讨Java为什么只有值传递,并提供代码示例来说明这一概念。
灬沙师弟
2024/10/28
1370
每天一个Java面试题之为什么 Java 只有值传递
细说值传递、引用传递和地址传递
形式参数:是在定义函数名和函数体的时候使用的参数,目的是用来接收调用该函数时传入的参数。
闫同学
2023/10/14
2570
Java的JVM介绍以及java的值传递和引用传递
面试的时候碰到的了一个java基础问题,竟然给问蒙了,回来之后感觉针对这个问题总结一下
包子388321
2020/06/16
1K0
面试专题:值传递和引用传递的问题
在Java编程中,参数传递有两种方式:值传递和引用传递。这两种传递方式决定了变量在方法内部的变化如何影响原始变量。本文将深入探讨这两种传递方式的概念、应用和注意事项,并且从面试题入手,分栈堆内存的情况。
小明爱吃火锅
2023/12/26
4130
详解Java中的值传递
如果大家学过c++,那这块肯定是明白的,但是Java中没有引用传递,在编程语言中,将实参传递给方法的方式有俩种就是我们即将要说的,
秋名山码神
2022/12/13
6950
详解Java中的值传递
相关推荐
为什么Java中只有值传递【详解】
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档